Explication bien detaillé dun prgme VBA

bonjour jai ecrit ce preogramme sulemnt jaimerai si vous pouvez maider avoir une explication bien detailler et bien struturer de mon programme s'il vous plait merci pour votre aide

Private Sub CommandButton5_Click()

Dim choix As Integer

Dim DLRange As Variant

Dim cht As Chart

Dim compteurG As Integer

If ActiveChart Is Nothing Then

MsgBox "Selectionner un graphique et reessayer.", vbExclamation

GoTo ExitSub

End If

Set cht = ActiveChart

choix = cht.SeriesCollection.Count

' Boucle sur les séries

compteurG = 2

For C = 1 To choix

On Error Resume Next

On Error GoTo 0

For i = 1 To ActiveChart.SeriesCollection(C).Points.Count

cht.SeriesCollection(C).Points(i).DataLabel.Select

Selection.Interior.Color = ActiveSheet.Cells(compteurG, 1).Interior.Color

Selection.Font.Size = 7

compteurG = compteurG + 1

Next i

Next C

ExitSub:

Application.ScreenUpdating = True

End Sub

Private Sub CommandButton5_Click() 'évènement qui s'execute après avoir cliqué sur la CommandButton5
        'déclaration de variables
    Dim choix As Integer
    Dim DLRange As Variant
    Dim cht As Chart
    Dim compteurG As Integer
    's'il n'y a pas de graphique actuellement sélectionné
    If ActiveChart Is Nothing Then
                'message d'erreur et sortie.
        MsgBox "Selectionner un graphique et reessayer.", vbExclamation
        'Cette partie est mal faite. Il faut écrire
        'GoTo ExitSub
        Application.ScreenUpdating = True : Exit Sub
    End If
        'on lie une des variables (objet) avec le graphe actif
    Set cht = ActiveChart

    'choix = nombre de séries de données dans le graphique
    choix = cht.SeriesCollection.Count
' Boucle sur les séries
        'un compteur
    compteurG = 2
        'boucle sur les séries
    For C = 1 To choix
                'en cas d'erreur, continuer le code et ignorer l'erreur
        On Error Resume Next
        'en cas d'erreur aller je sais pas où
        On Error GoTo 0
                'pour chaque point de la série de données actuellement traitée
        For i = 1 To ActiveChart.SeriesCollection(C).Points.Count
                        'sélection de son étiquette
            cht.SeriesCollection(C).Points(i).DataLabel.Select
                        'couleur de cette étiquette = couleur de la cellule ligne "compteurG" et colonne 1
            Selection.Interior.Color = ActiveSheet.Cells(compteurG, 1).Interior.Color
                        'taille de police de cette étiquette = 7
            Selection.Font.Size = 7

            'incrémentation du compteur qui représente une ligne dans la feuille excel
            compteurG = compteurG + 1
                        'point suivant
        Next i

            'série de données suivante
    Next C
            'sortie de la procédure
            ExitSub:
                        'on réactive le raffraichissement de l'écran
            Application.ScreenUpdating = True
End Sub

merci bcp d3d9x

Bonjour,

A tester.

Cdlt.

Option Explicit

Private Sub CommandButton5_Click()
Dim choix As Long, C As Long
Dim cht As Chart

    If ActiveChart Is Nothing Then
        MsgBox "Selectionner un graphique et reessayer.", vbExclamation
        Exit Sub
    End If

    Application.ScreenUpdating = False

    Set cht = ActiveChart
    choix = cht.SeriesCollection.Count

    For C = 1 To choix
        For i = 1 To ActiveChart.SeriesCollection(C).Points.Count
            cht.SeriesCollection(C).Points(i).DataLabel.Select
            With Selection
                .Interior.Color = ActiveSheet.Cells(compteurG, 1).Interior.Color
                .Font.Size = 7
            End With
        Next i
    Next C

    Set cht = Nothing

End Sub
Rechercher des sujets similaires à "explication bien detaille dun prgme vba"