Boucle prenant fin lorsque ligne vide

Résolu
lili4915 Messages postés 13 Statut Membre -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour,
je suis débutante en VBA

J'ai codé la macro suivante :
Sub Mod1()
If ActiveSheet.Range("A2") = ActiveSheet.Range("D2") Then
MsgBox ("Erreur")
End If
End Sub

Je souhaiterais créer une boucle afin de tester toutes les lignes de mon tableau (toujours sur les colonnes A et D) jusqu'à ce que la ligne soit vide

Pouvez-vous m'aider ?

3 réponses

  1. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour

    Const lideb = 2
    
    Sub Mod1()
    Dim li As Long
    li = lideb
    With ActiveSheet
      While .Range("A" & li).Value <> ""
        If .Range("A" & li).Value = .Range("D" & li).Value Then MsgBox 
    ("Erreur")
      li = li+1
      Wend
    End With
    MsgBox "terminé"
    End Sub


    Commence à la ligne lideb et s'arrêtera dès qu'en colonne A la cellule sera vide

    Cdlmnt
    0
    1. lili4915 Messages postés 13 Statut Membre
       
      Merci beaucoup pour votre réponse !
      La formule fonctionne
      Cependant, j'aurais besoin que le message d'erreur m'indique la (ou les) ligne(s) en question, est-ce possible ?
      0
  2. ccm81 Messages postés 11033 Statut Membre 2 434
     
    ecrit sur une seule ligne
        If .Range("A" & li).Value = .Range("D" & li).Value Then MsgBox ("Erreur en ligne " & li)

    Cdlmnt
    0
    1. lili4915 Messages postés 13 Statut Membre
       
      Merci !!
      0
  3. ccm81 Messages postés 11033 Statut Membre 2 434
     
    De rien

    Si c'est fini, peux tu mettre le sujet à résolu (en haut à droite, la roue dentée)

    Bon après midi
    0