J'ai des problèmes avec mon code. Tout fonctionne très bien, jusqu'à ce que j'atteigne ma 3ième instruction foreach, alors toutes les colonnes remplacent et affichent les données de la dernière foreach. Avez-vous des sugestions? Et je voudrais demander si quelqu'un sait comment puis-je utiliser si déclaration pour voir si il y a une valeur "stop" dans la colonne (Si ws.cells (i, 1) <> "" Ensuite). Merci beaucoup. Ci-dessous mon code:Copier plusieurs colonnes d'une feuille de calcul dans une autre colonne dans une autre feuille de calcul
lastRowMaster = 1
For Each Ws In Sheets(Array("List1", "List2", "List3"))
lastrow = Ws.Range("A" & Rows.Count).End(xlUp).row
Ws.Range("C1:C50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("D" & lastRowMaster)
Ws.Range("A1:A50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("A" & lastRowMaster)
Ws.Range("L1:L50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("B" & lastRowMaster)
Ws.Range("L1:L50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("C" & lastRowMaster)
lastRowMaster = Worksheets("MasterList").Range("A" & Rows.Count).End(xlUp).row + 1
Next
For Each Ws In Sheets(Array("List3"))
lastrow = Ws.Range("N" & Rows.Count).End(xlUp).row
Ws.Range("Q7:Q50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("D" & lastRowMaster)
Ws.Range("N7:N50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("A" & lastRowMaster)
Ws.Range("P7:P50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("B" & lastRowMaster)
Ws.Range("P7:P50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("C" & lastRowMaster)
lastRowMaster = Worksheets("MasterList").Range("N" & Rows.Count).End(xlUp).row + 1
Next
For Each Ws In Sheets(Array("List3"))
lastrow = Ws.Range("AA" & Rows.Count).End(xlUp).row
Ws.Range("AD7:AD50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("D" & lastRowMaster)
Ws.Range("AA7:AA50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("A" & lastRowMaster)
Ws.Range("AC7:AC50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("B" & lastRowMaster)
Ws.Range("AC7:AC50" & lastrow).Copy Destination:=Worksheets("MasterList").Range("C" & lastRowMaster)
lastRowMaster = Worksheets("MasterList").Range("AA" & Rows.Count).End(xlUp).row + 1
Next