Sub CreateCheckBox([COLOR=red]Nom [/COLOR]As String, [COLOR=red]Droite[/COLOR] As Long, [COLOR=red]Haut [/COLOR]As Long)
'recuperation de la largeur de la feuille graphique
Dim [COLOR=red]Largeur [/COLOR]As Double
' déclaration de la case à cocher
Dim [COLOR=red]MonCheckBox[/COLOR] As Shape
[COLOR=red]Largeur[/COLOR] = ActiveChart.ChartArea.Width
'création de la case à cocher
Set [COLOR=red]MonCheckBox[/COLOR] = ActiveChart.Shapes.AddFormControl(xlCheckBox, _
[COLOR=red]Largeur [/COLOR]- [COLOR=red]Droite[/COLOR], [COLOR=red]Haut[/COLOR], 80, 10)
'modification du nom et du label de la case à cocher
[COLOR=red]Dim NomLabel As String[/COLOR]
[COLOR=red]NomLabel [/COLOR]= Left([COLOR=red]Nom[/COLOR], Len([COLOR=red]Nom[/COLOR]) - 2) 'supprime le numero du checkbox
[COLOR=darkorange]MonCheckBox.name = Nom ' Là, y doit y avoir un problème de propriété, Name ne se met pas en majuscule pour le N tout seul...[/COLOR]
ActiveChart.Shapes([COLOR=red]Nom[/COLOR]).Select
Selection.Characters.Text = [COLOR=red]NomLabel[/COLOR]
Selection.PrintObject = False 'objet invisible à l'impression
'modification de la couleur de fond et de l'emplacement du checkbox
Selection.ShapeRange.Fill.Visible = msoTrue
Selection.ShapeRange.Fill.Solid
Selection.ShapeRange.Fill.ForeColor.SchemeColor = 7
Selection.ShapeRange.Fill.Transparency = 0#
Selection.ShapeRange.Left = [COLOR=red]Largeur[/COLOR] - [COLOR=red]Droite[/COLOR]
[COLOR=darkorange]Selection.ShapeRange.top = Haut ' Même souci de propriété pour Top[/COLOR]
'validation par défaut de la case à cocher
MonCheckBox.ControlFormat.Value = 1