Probleme Boucle Excel

Résolu
Bonjour,

Je souhaite bouclé ce programme jusqu'à temps qu'il n'y est plus rien dans "Liste"A+21
Quelqu'un peut me montrer comment faire ??

Sub tri2()
'
'
Sheets("Liste").Select
Range("A2").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Tri").Select
Range("E1").Select
ActiveSheet.Paste

Sheets("Liste").Select
Range("A23").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Tri").Select
Range("E2").Select
ActiveSheet.Paste

Sheets("Liste").Select
Range("A44").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Tri").Select
Range("E3").Select
ActiveSheet.Paste

...

End Sub

4 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    Bonjour,

    Pas compris ceci: A+21 ???

    Merci d'avance
    Michel
    Vous programmez en VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...(P. Fauconnier/dvp)
    1. Bah en faite dans ma feuill "Liste" je veux copier la celulle A2,A23,A44,...(A2+21,A23+21,...)
      1. Contributeur
        re,

        tu souhaites recopier que les valeurs ou tout (formules, formats....) ?
        1. Re,
          Les valeurs devrait me suffir je pense !
      2. Contributeur
        proposition de macro

        Option Explicit
        
        Sub trier2()
        Dim lig1 As Long, lig2 As Long
        
        Application.ScreenUpdating = False
        With Sheets("liste")
            lig2 = 1
            For lig1 = 2 To 655536 Step 21
                If IsEmpty(.Cells(lig1, "A")) Then
                    Exit For
                Else
                    Sheets("tri").Cells(lig2, "E") = .Cells(lig1, "A")
                    lig2 = lig2 + 1
                End If
            Next
        End With
        
        Sheets("tri").Activate
        End Sub
        1. Parfait ca marche.
          Merci beaucoup de ton aide.