Voici le point de départ de l'exercice :
Sub exercice_boucles()
Const NB_CASES As Integer = 10 'Nombre de cellules à colorer
'...
End Sub
Prenez quelques instants pour créer cette boucle avant de passer à la solution ...
-
-
-
-
-
-
-
-
-
-
-
-
-
La solution :Sub exercice_boucles()
Const NB_CASES As Integer = 10 'Nombre de cellules à colorer
For l = 1 To NB_CASES 'l => n° ligne
Cells(l, 1).Interior.Color = RGB(0, 0, 0) 'Noir
Next
End Sub
-
-
-
-
-
-
-
-
-
-
-
-
Sub exercice_boucles()
Const NB_CASES As Integer = 10 'Nombre de cellules à colorer
For l = 1 To NB_CASES 'l => n° ligne
If l Mod 2 = 0 Then 'Mod => est le reste d'une division
Cells(l, 1).Interior.Color = RGB(200, 0, 0) 'Rouge
Else
Cells(l, 1).Interior.Color = RGB(0, 0, 0) 'Noir
End If
Next
End Sub
Seuls les n° de ligne pairs ont un reste égal à 0 lorsqu'ils sont divisés par 2.
.
.
.
.
.
.
.
.
.
.
.
.
.
La solution :.
.
.
.
.
.
.
.
.
.
.
.
Sub exercice_boucles()
Const NB_CASES As Integer = 10 'Damier de 10x10 cellules
For l = 1 To NB_CASES 'l => n° ligne
For c = 1 To NB_CASES 'c => n° colonne
If l Mod 2 = 0 Then
Cells(l, c).Interior.Color = RGB(200, 0, 0) 'Rouge
Else
Cells(l, c).Interior.Color = RGB(0, 0, 0) 'Noir
End If
Next
Next
End Sub
Pour obtenir ce résultat ...
Remplacez :
If l Mod 2 = 0 Then
If (l + c) Mod 2 = 0 Then
.
.
.
.
.
.
.
.
.
.
.
.
Sub exercice_boucles()
Const NB_CASES As Integer = 10 'Damier de 10x10 cellules
Dim lig As Integer, col As Integer ' => ajout de 2 variables
'Décalage (lignes) à partir de la première cellule = n° de ligne de la cellule active - 1
lig = ActiveCell.Row - 1
'Décalage (colonnes) à partir de la première cellule = n° de colonne de la cellule active - 1
col = ActiveCell.Column - 1
For l = 1 To NB_CASES 'N° ligne
For c = 1 To NB_CASES 'N° colonne
If (l + c) Mod 2 = 0 Then
'Cells(n° de ligne + décalage lignes, n° de colonne + décalage colonnes)...
Cells(l + lig, c + col).Interior.Color = RGB(200, 0, 0) 'Rouge
Else
Cells(l + lig, c + col).Interior.Color = RGB(0, 0, 0) 'Noir
End If
Next
Next
End Sub
Aucun commentaire:
Enregistrer un commentaire