Copie jusqu'à ce lastRow et la coller dans une autre feuille de calcul
Je suis actuellement en utilisant le code ci-dessous pour copier coller la plage, mais il crée un très gros fichier, une fois que les données sont collées, comment puis-je modifier cela pour copier coller que jusqu'à la dernière ligne active? Ou est le fichier se big cause d'un autre facteur?
Nouveau à VB, toute aide serait grandement appréciée.
Private Sub CommandButton1_Click()
Dim WB1 As Workbook
Dim WB2 As Workbook
Set WB1 = ActiveWorkbook
Set WB2 = Workbooks.Open(WB1.Path & "\RawData.xlsm")
WB1.Sheets("CR Details").Columns("A:AW").Value = WB2.Sheets("sheet1").Columns("A:AW").Value
WB2.Close
End Sub
Vous devez vous connecter pour publier un commentaire.
La réponse courte à votre question est:
Une explication plus détaillée:
Très commun, extrait de code pour trouver la dernière ligne est à utiliser:
(va utiliser Une colonne de regarder pour la dernière utilisation de la ligne)
Changement "1" pour le numéro de la colonne que vous voulez regarder dans.
De trouver la ligne de la dernière cellule dans une colonne de la
range("A:AW")
, ensuite, vous besoin de quelque chose comme ceci:Que c'est. Ron de Buin a une grande page expliquant cela. Les réponses peuvent également être trouvés sur Un Débordement De Pile.
La taille du fichier est un résultat de l'utilisation de l'ensemble des colonnes. Cette lien couvre quelques façons de trouver, puis à la fin d'une plage de données. Dans votre sous vous pouvez faire ceci: