Copier/coller VBA range à la place ligne

Sabrhm

XLDnaute Junior
Bonjour à tous,

J'ai actuellement une macro que vous trouverez ci-dessous, je souhaiterais qu'à la place de copier/coller des lignes, ma macro copie/colle des les 9 premières colonnes de ma feuille ou de la plage A2:I200.

Merci d'avance pour votre aide.



Dim Lig&, DerL&

DerL = Worksheets("Historique_contrôle").Range("A" & Rows.Count).End(3).Row

For Lig = 2 To 100

If Worksheets("Article_controle").Cells(Lig, 3) = "OK" Then

Worksheets("Article_controle").Rows(Lig).Copy

Worksheets("Historique_contrôle").Range("A" & DerL + 1).PasteSpecial (xlPasteValues)

DerL = DerL + 1

End If

Next
 

Sabrhm

XLDnaute Junior
Malheureusement, ça ne marche pas, au lieu de me copier/Coller toutes les lignes de A à I où j'ai OK, la macro me colle la plage "A2:I de la dernière ligne ou j'ai dans la cellule OK" et donc dans cette plage j'ai des lignes où je n'ai pas de OK.
 

Bougla972

XLDnaute Occasionnel
Si j'ai bien compris, remplace ta macro par ceci:
VB:
Dim Lig&, DerL&

DerL = Worksheets("Historique_contrôle").Range("A" & Rows.Count).End(3).Row

Worksheets("Article_controle").Range("A2:I" & DerL).Copy

Worksheets("Historique_contrôle").Range("A" & DerL + 1).PasteSpecial (xlPasteValues)
 

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof