PaliSkill
Introduction au VBA

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