Arrêter une macro à chaque "fin" de ligne

Signaler
Messages postés
1
Date d'inscription
dimanche 27 décembre 2020
Statut
Membre
Dernière intervention
27 décembre 2020
-
Messages postés
8354
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
22 janvier 2021
-
Bonjour,

j'ai fait une macro qui rempli les cellules, et elle se fait sur plusieurs lignes. Cependant j'aimerai qu'elle s'arrête à la "fin" de chaque ligne c'est-à-dire au niveau de la colonne "AF" ou 32.

Merci d'avance, bonne journée! :)

2 réponses

Messages postés
7224
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
23 janvier 2021
118
bonjour,

voir ceci:

https://www.developpez.net/forums/d605223/logiciels/microsoft-office/excel/contribuez/boucles-parcourir-colonne-ligne-plage-donnees-2-methodes/

ce qui donne cet exemple:

Option Explicit
Sub For_Each_Next_Plage()
Dim FL1 As Worksheet, Cell As Range, Plage As Range
Dim i As Integer
i = 1
  Set FL1 = Worksheets("Feuil1")
    With FL1
        'Détermination de la plage de cellules à lire
        'Peut s'écrire en utilisant l'objet range de la plage
        'For Each Cell In .Range("B3:E15")
        'ou en utilisant l'objet Plage (range) de la plage
        Set Plage = .Range("A1:AF20")
        For Each Cell In Plage
       Cell.Value = i
       i = i + 1
       If Cell.Column = 32 Then
       MsgBox "Fin de ligne"
       End If
        Next
    End With
    Set FL1 = Nothing
    Set Plage = Nothing
End Sub



Voilà c'est tout simple

Messages postés
8354
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
22 janvier 2021
21
Bonjour,

Ou encore :
Sub For_Each_Ligne_Dans_Plage()
Dim Plage As Range, Ligne As Range, Cell As Range
  With Worksheets("Feuil1")
    Set Plage = .Range("A1:AF20")
    For Each Ligne In Plage.Rows
      For Each Cell In Ligne.Cells
        Cell.Value = "x"
      Next
      MsgBox "Fin de ligne"
    Next
  End With
End Sub