Lancer une macro à partir d'une checkbox

charlyparis

XLDnaute Nouveau
Voilà le problème:

Au début, je lançais cette macro à partir d'une case d'option du menu formulaire qui marchait très bien mais je me suis rendu compte qu'ill fallait plutôt que j'utilise des cases à cocher (Checkbox du menu Contrôle!) pour ce travail.

Donc je voudrais qu'en cochant le case, ca lance ma macro qui copie des données d'un tableau sur une autre feuille. Avec la case d'option, ca marche normalement mais avec la checkbox, ca ne copie rien!
Aidez-moi, svp!
Bon bien sûr je suis débutant!
Merci d'avance pour votre aide.

Voilà le programme :

Private Sub CheckBox3_Click()

If CheckBox3.Value = True Then
Worksheets("SF SI").Select

Dim i
Dim j
Dim k
Dim NumeroLigne
Dim boucleur
Dim N
'Dim boucleurbis
i = 4

'Application.CutCopyMode = False
For j = 4 To 62
Worksheets("SF SI").Select
If Cells(j, 7).Value <> "" Then
Range(Cells(j, 1), Cells(j, 4)).Select
Selection.Copy
Worksheets("Vos Compétences SF SI").Select
If IsEmpty(Range("A4")) Then
Worksheets("Vos Compétences SF SI").Range("A" & i).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
i = i + 1

Else
Worksheets("Vos Compétences SF SI").Select
NumeroLigne = Worksheets("Vos Compétences SF SI").Range("A62").End(xlUp).Row + 1
Worksheets("Vos Compétences SF SI").Range("A" & NumeroLigne).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

End If

End If

Next j

End If
End Sub
 

charlyparis

XLDnaute Nouveau
Re : Lancer une macro à partir d'une checkbox

C'est bon ! J'ai réussi avec les chiffres :

With Range("A" & 5 & Numeroligne - 1 & 5)
For k = 1 To Numeroligne - 1
Select Case Cells(5, k).Value
Case "N/A"
Cells(6, k).Value = "1"
Case "Notion"
Cells(6, k).Value = "2"
Case "Appliqué"
Cells(6, k).Value = "3"
Case "Maitrise"
Cells(6, k).Value = "4"
Case "Expert"
Cells(6, k).Value = "5"
Case Else
Cells(6, k).Value = ""
End Select
Next k
End With

Est-ce que vous savez comment mettre cette série de nombre pour lancer un graphique automatiquement? Je vais étudier ce sujet...
 

Pièces jointes

  • LZFRED_super_ch.zip
    45.9 KB · Affichages: 25
  • LZFRED_super_ch.zip
    45.9 KB · Affichages: 26
  • LZFRED_super_ch.zip
    45.9 KB · Affichages: 28

ledzepfred

XLDnaute Impliqué
Re : Lancer une macro à partir d'une checkbox

salut

c'étaient des problèmes de syntaxes, voici le bon code :
Code:
Option Explicit
Private Sub CommandButton1_Click()
Dim j, Numeroligne, k As Integer
Application.ScreenUpdating = False
With Sheets("Vos Compétences SF SI")
    Numeroligne = .Range("E62").End(xlUp).Row
    For j = 4 To Numeroligne
        .Range("E" & j).Copy Sheets("Resultat").Cells(4, j - 3)
        .Range("F" & j).Copy Sheets("Resultat").Cells(5, j - 3)
    Next j
End With
    For k = 1 To Numeroligne - 3
        Select Case Cells(5, k).Value
            Case [COLOR="Red"]"[/COLOR]N/A[COLOR="red"]"[/COLOR]
                Cells(6, k).Value = 1
            Case [COLOR="red"]"[/COLOR]Notion[COLOR="red"]"[/COLOR]
                Cells(6, k).Value = 2
            Case [COLOR="red"]"[/COLOR]Appliqué[COLOR="red"]"[/COLOR]
                Cells(6, k).Value = 3
            Case [COLOR="red"]"[/COLOR]Maitrise[COLOR="red"]"[/COLOR]
                Cells(6, k).Value = 4
            Case [COLOR="red"]"[/COLOR]Expert[COLOR="red"]"[/COLOR]
                Cells(6, k).Value = 5
        End Select
       Next k
With Cells
    .HorizontalAlignment = xlCenter
    .WrapText = True
    .MergeCells = False
    .Rows.AutoFit
    .Columns.AutoFit
End With
End Sub
N'hésites pas if you want me to explain

A+
 

Pièces jointes

  • LZFRED_super_ch.zip
    38.1 KB · Affichages: 28
  • LZFRED_super_ch.zip
    38.1 KB · Affichages: 29
  • LZFRED_super_ch.zip
    38.1 KB · Affichages: 29

charlyparis

XLDnaute Nouveau
Re : Lancer une macro à partir d'une checkbox

Merci Fred pour la syntaxe! J'apprends, j'apprends!

Au fait, voici l'onglet résultat avec le graphique et ses deux séries armées de la fonction DECALER : compétences élémentaires et la nouvelles échelle de 1 à 5, comme je l'ai expliqué hier.

Est-ce qu'il est possible qu'à la place des 1,2,3.....24 (sur le cercle supérieur représentant les compétences élémentaires), d'afficher le texte au lieu de nombres?

Cad au lieu du 1, de lire : Archichecture fonctionelle....

Merci encore pour tes conseils! :)
 

Pièces jointes

  • LZFRED_super_ch09.zip
    46.8 KB · Affichages: 39

ledzepfred

XLDnaute Impliqué
Re : Lancer une macro à partir d'une checkbox

Finalement c'est pas si compliqué,

un clic droit sur le graphique puis Données Source et dans Etiquettes de l'axe des abcisses tu mets
Code:
=Resultat!$A$4:$A$27

tu n'as plus qu'à modifier la police des étiquettes pour que ce soit lisible (c'est pas encore gagné mais ce n'est que de la mise en forme)

Pour que cela soit automatisé dans la mcro il suffit d'ajouter ces lignes dans le code du bouton résultat :
Code:
  ActiveSheet.ChartObjects("Graphique 19").Activate
    With ActiveChart
    ActiveChart.SeriesCollection(1).XValues = "=Resultat!R4C1:R" & Numeroligne - 1 & "C1"
    ActiveChart.SeriesCollection(2).XValues = "=Resultat!R4C1:R" & Numeroligne - 1 & "C1"
    End With

a+
 

Discussions similaires

Statistiques des forums

Discussions
312 493
Messages
2 088 955
Membres
103 989
dernier inscrit
jralonso