Supprimer les etiquettes de données case à cocher VBA / erreur 424

Signaler
-
Frenchie83
Messages postés
2047
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
15 décembre 2019
-
Bonjour,

Debutant, je souhaiterais que les etiquettes de données de mon graphique ne s'affiche plus quand je coche une case et quand je la decoche elles s'affichent.

Je pensais utiliser le code suivant:

Sub CheckBox11_Click()

If CheckBox11.Value = True Then
Charts("Graphique1").SeriesCollection(f). _
ApplyDataLabels Type:=xlDataLabelsShowNone
End If

End Sub


Cependant l'erreur 424 objet requis s'affiche sur la ligne "If CheckBox11.Value = True Then"

Comment puis-je faire?

Merci

5 réponses

Messages postés
2047
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
15 décembre 2019
245
Bonjour,

Essayez ceci
Private Sub CheckBox11_Click()
    If CheckBox11.Value = True Then Afficher Else Masquer
End Sub

Sub Afficher()
    ActiveSheet.ChartObjects("Graphique 1").Activate
    ActiveChart.SeriesCollection(1).ApplyDataLabels
End Sub

Sub Masquer()
    ActiveSheet.ChartObjects("Graphique 1").Activate
    ActiveChart.SeriesCollection(1).DataLabels.Delete
End Sub


Cdlt
merci, quand je veux affecter une macro à la case à coher celà m'indique caseàcoher11 et non CheckBox11. Dois-je laisser Checkbox ou remplacer par caseàcocher?

Merci pour votre aide
michel_m
Messages postés
16016
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
13 décembre 2019
2841
Bonjour Marion, Frenchie

Apparemment, si tu as "case à cocher", tu est en mode "contrôle de formulaire" dans le menu "développeur - insérer" . checkbox est dans "contrôle-active X"

Si tu as besoin d'une macro, il vaut mieux utiliser "contr^le-active X"
Messages postés
2047
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
15 décembre 2019
245
Pour le mode formulaire, à copier dans un module standard
Sub Case_a_cocher()
    ActiveSheet.Shapes("Case à cocher 11").Select
    If Selection.Value = 1 Then Afficher Else Masquer
End Sub

Sub Afficher()
    ActiveSheet.ChartObjects("Graphique 1").Activate
    ActiveChart.SeriesCollection(1).ApplyDataLabels
End Sub

Sub Masquer()
    ActiveSheet.ChartObjects("Graphique 1").Activate
    ActiveChart.SeriesCollection(1).DataLabels.Delete
End Sub