Leçon 2 / 8 — Chapitre 2: Logique conditionnelle et boucles
Boucles Pour et Tant que : traiter plusieurs lignes
Recopier la même instruction 200 fois pour traiter 200 lignes de ventes serait absurde. C'est exactement le problème que résolvent les boucles : elles répètent un bloc de code autant de fois que nécessaire, en changeant automatiquement de ligne ou de valeur à chaque passage.
La boucle For (Pour), utilisée quand on connaît le nombre de répétitions à l'avance :
Sub TotalVentesSemaine()
Dim i As Integer
Dim total As Double
total = 0
For i = 2 To 8
total = total + Cells(i, 2).Value
Next i
MsgBox "Total des ventes de la semaine : " & total & " $"
End Sub
Ici, i prend successivement les valeurs 2, 3, 4... jusqu'à 8, et à chaque tour on additionne la cellule de la colonne B correspondante. Imagine un vendeur de téléphones qui note ses ventes journalières en B2:B8 : cette macro calcule le total en une fraction de seconde, sans formule à recopier.
La boucle Do While (Tant que), utile quand on ne sait pas à l'avance combien de lignes sont remplies :
Sub CompterLignesRemplies()
Dim ligne As Integer
ligne = 2
Do While Cells(ligne, 1).Value <> ""
ligne = ligne + 1
Loop
MsgBox "Nombre de lignes de données : " & (ligne - 2)
End Sub
Cette macro avance ligne par ligne tant que la colonne A n'est pas vide, ce qui est très pratique pour un tableau qui grandit chaque semaine (nouvelles ventes, nouveaux adhérents) sans limite fixe.
Attention au piège classique de Do While : oublier de faire progresser la variable (ligne = ligne + 1) provoque une boucle infinie qui bloque Excel. Toujours vérifier que la condition finira par devenir fausse.
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 76 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès