Option Explicit 'oblige ˆ declarer les variables
Sub matrice()
Dim MC As Range, MC1 As Range, MC2 As Range
Dim X As Integer
Dim S As String
Dim col As Integer, lig As Integer
Dim couleur As Long
Dim Nblignes As Integer
Dim NBcolonnes As Integer
Dim i As Integer, j As Integer
Set MC = Range("C4") 'affecte la cellule C4 à la variable MC
X = MC.Value 'X prend la valeur de la cellule C4
S = MC.Address 'S prend l'adresse de la varialbe MC ===> C4 ==> $C$4 en référence absolue
lig = MC.Row 'lig récupère la ligne de MC
col = MC.Column 'col prend le numéro de colonne de MC (1 = ColA, 2=ColB....
X = MC.Offset(2, 3).Value 'X prend la valeur de la cellule située 2 lignes SOUS MC et 3 colones à Droite de MC ==>F6
couleur = MC.Interior.Color 'Couleur prend un nombre qui correspond à la couleur de la cellule MC
Set MC1 = MC.End(xlDown) 'à partir de MC, on se décale vers le bas (équivalent au double clic sur la bordure inférieure de C4==> arrive en C6
Set MC2 = MC.End(xlDown).End(xlToRight) ' àpartir de MC, on va, vers le bas puis vers la droite==> arrive en G6
Nblignes = MC2.Row - MC.Row + 1 'calcule le nombre de lignes du tableau: numéro de ligne de MC2 (=G6 ==> 6) MOINS le numro de ligne de MC (=C4 ==> 4) + 1
NBcolonnes = MC2.Column - MC.Column + 1 'meme calcul pour le nombre de colonne
For i = 0 To Nblignes - 1 'pour le compteur i qui va de 0 à nblignes-1
For j = 0 To NBcolonnes - 1 'pour le compteur j qui va de 0 à Nbcolonnes -1
X = MC.Offset(i, j).Value 'la variable X prend la valeur de la cellule située i lignes SOUS mc et j colonnes à droite de MC===> MAIS du coup.. la varialbe est modifiée à chaque tour de boucle;. mais on n'en fait rien
Next j
Next i
'===> bilan, cette macro ne sert strictement à rien si il n'y a aucun des commentaires que je viens de te faire
End Sub