C'est juste un problème de logique …
Comme le code n'est pas balisé (voir donc les règles de ce forum, il y a même une animation pour les moins doués !)
je me suis arrêté aux Activate inutiles !
A partir de l'explication précédant le code, voici un premier exemple, version débutant :
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| Sub Demo1()
Dim Rg As Range, N&, R&
Application.ScreenUpdating = False
Feuil3.UsedRange.Clear
N = Feuil2.UsedRange.Rows.Count
R = 1 - N
For Each Rg In Feuil1.UsedRange.Columns(1).Cells
R = R + N
Rg.Copy Feuil3.Cells(R, 1).Resize(N)
Next
Feuil2.UsedRange.Columns(1).Copy Feuil3.UsedRange.Columns(1).Offset(, 1)
Application.Goto Feuil3.Cells(1), True
Application.ScreenUpdating = True
End Sub |
Une variante de la logique de la copie de Feuil2 :
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| Sub Demo1v()
Dim Rg As Range, N&, R&
Application.ScreenUpdating = False
Feuil3.UsedRange.Clear
N = Feuil2.UsedRange.Rows.Count
R = 1
For Each Rg In Feuil1.UsedRange.Columns(1).Cells
Rg.Copy Feuil3.Cells(R, 1).Resize(N)
R = R + N
Next
Feuil2.UsedRange.Columns(1).Copy Feuil3.Cells(2).Resize(R - 1)
Application.Goto Feuil3.Cells(1), True
Application.ScreenUpdating = True
End Sub |
______________________________________________________________________________________________________
Merci de cliquer sur

pour chaque message ayant aidé …
Partager