jbballeyguier
XLDnaute Nouveau
Bonjour à tous !
J'ai un léger soucis avec une macro, dont le but est de copier certaines ligne d'une feuille vers une autre, si cette ligne remplit une condition.
Actuellement, j'arrive à copier les lignes... mon soucis est de les coller dans l'ordre que je veux dans la feuille de destination.
Ma macro définit deux variable : une pour la ligne de la feuille d'origine à copier (i), l'autre pour la ligne de la feuille destination où les données doivent être collées (j).
N'ayant pas trouvé comment copier/coller une ligne entièrement j'utilise Range.
La macro vérifie qu'une condition est vérifiée dans la colonne F, puis copie le Range de A à G de la ligne correspondante :
Le problème est que je vais peut être devoir copier les lignes 21,42,78 et 86... mais j'aimerai qu'elles se collent à la suite dans les lignes 1,2,3 et 4... actuellement les lignes se copient dans les lignes 21,42,78 et 86 de la feuille de destination. Ce qui est particulièrement ennuyeux car je ne saurai jamais où les données vont apparaître, or ces données sont utilisées par une autre macro...
Une idée ? Merci d'avance
J'ai un léger soucis avec une macro, dont le but est de copier certaines ligne d'une feuille vers une autre, si cette ligne remplit une condition.
Actuellement, j'arrive à copier les lignes... mon soucis est de les coller dans l'ordre que je veux dans la feuille de destination.
Ma macro définit deux variable : une pour la ligne de la feuille d'origine à copier (i), l'autre pour la ligne de la feuille destination où les données doivent être collées (j).
N'ayant pas trouvé comment copier/coller une ligne entièrement j'utilise Range.
La macro vérifie qu'une condition est vérifiée dans la colonne F, puis copie le Range de A à G de la ligne correspondante :
Code:
Sub Macro1()
Sheets("Avancement_VNR_Editions").Activate
Dim i As Integer
i = 2
Dim j As Integer
j = 2
Do While Cells(i, 6) <> ""
If Range("$F$" & i & "") = "VNR" Then
Range("$A$" & i & ":$G$" & i & "").Copy Sheets("Avancement_Cloture_Editions").Range("$A$" & j & ":$G$" & j & "")
End If
i = i + 1
j = j + 1
Loop
End Sub
Le problème est que je vais peut être devoir copier les lignes 21,42,78 et 86... mais j'aimerai qu'elles se collent à la suite dans les lignes 1,2,3 et 4... actuellement les lignes se copient dans les lignes 21,42,78 et 86 de la feuille de destination. Ce qui est particulièrement ennuyeux car je ne saurai jamais où les données vont apparaître, or ces données sont utilisées par une autre macro...
Une idée ? Merci d'avance