Private TCB(1 To 35) As New CBClass 'déclare le tableau des CommandButtons TCB
Private Sub UserForm_Initialize() 'à l'initialisation de l'UserForm
Dim ctrl As Control 'déclare la variable ctrl (ConTRôLe)
Dim b As Object 'déclare la variable b (onglet Base)
Dim i As Byte 'déclare la variable i (Incrément)
Dim j As Byte 'déclare la variable j (incrément)
Dim k As Byte 'déclare la variable k (incrément)
Dim li As Byte 'déclare la variable li (LIgne)
Dim col As Byte 'déclare la variable col (COLonne)
'**********************************************
'alimentation du tableau des commandbuttons TCB
'**********************************************
For i = 1 To 35 'boucle sur les 35 commandbuttons
Set TCB(i).CB = Me.Controls("m" & i) 'ajoute le commandbutton au tableau TCB
Next i 'prochain commandbutton de la boucle
Set b = Sheets("Base") 'définit l'onglet b
'*********************************************
'alimentation des labels de jour de la semaine
'*********************************************
For i = 1 To 7 'boucle sur 7 jours
Me.Controls("J" & i).Caption = b.Cells(11, i + 2) 'récupère la valeur de la cellule ligne 11, colonne i+2
Next i 'prochain jour de la boucle
'************************************************
'alimentation des commandbuttons de jours du mois
'************************************************
k = 1 'initialise la variable k
For i = 1 To 5 'boucle 1 : sur 5 lignes
For j = 1 To 7 'boucle 2 : sur 7 colonnes
li = 11 + (2 * i) 'définit la variable li
col = j + 2 'définit la variable col
Me.Controls("m" & k).Caption = Format(b.Cells(li, col), "dd") 'récupère la valeur de la cellule ligne li colonne col
k = k + 1 'incrément k
Next j 'prochaine colonne de la boucle 2
Next i 'prochaine ligne de la boucle 1
mois_en_cours = "le mois en cours est : " & Format(b.Range("a1"), "mmmm")
End Sub