I denne artikkelen skal vi lære hvordan du samler data fra forskjellige arbeidsbøker gjennom VBA i Microsoft Excel.
La oss forstå med en enkel øvelse hvordan du slår sammen regneark gjennom VBA i Microsoft Excel.
Vi har 3 forskjellige Excel -filer. 2 filer er til xlsx og en fil er til xlsm i en mappe. Vi ønsker å samle begge datasettene i Excel -filen for å huske på at i hver data kan rader og kolonner økes og reduseres, og vi vet heller ikke Excel -filnavnene og hvor mange filer det er i en mappe .
I dette arket ønsker vi å kombinere dataene:-
1st Data:-
2nd Data:-
3rd Data:-
Nå vil vi samle dataene i et ark. Vi må følge trinnene og koden nedenfor:-
- Trykk på tasten Alt+F11 for å åpne VBE -siden for å skrive makroen.
- Gå deretter til Sett inn -fanen og sett inn en modul.
- Skriv koden nedenfor på siden.
Sub Collate_Data ()
Dim FolderpathAs String, filePath As String, Filname As String
Folderpath = "E: \ Excel Tips \ Nye VBA -emner \ HR Data \" ‘(nevner filbanen)
filePath = Mappebane og "*xls*"
Filnavn = Dir (filePath)
Dim Lastrow As Long, Lastcolumn As Long
Gjør mens filnavn ""
Workbooks.Open (mappebane og filnavn)
Lastrow = ActiveSheet.Cells (Rows.count, 1) .End (xlUp) .Row
Lastcolumn = ActiveSheet.Cells (1, Columns.count) .End (xlToLeft) .Column
Område (celler (2, 1), celler (lastrow, siste kolonne)). Kopier
Application.DisplayAlerts = Falsk
ActiveWorkbook.Lukk
erow = Sheet1.Cells (Rows.count, 1) .End (xlUp) .Offset (1, 0) .Row
ActiveSheet.Paste Destination: = Regneark ("Ark1"). Område (celler (erow, 1), celler (erow, 5))
Filnavn = Dir
Løkke
Application.DisplayAlerts = True
Slutt Sub
Kodeforklaring: - For det første vil vi definere alle variablene vi må bruke mens vi beskriver koden. Deretter bruker vi Do While loop in code for å kjøre programmet for alle Excel -filer. Deretter vil vi definere banen til filer, og etter det vil vi definere den siste raden og kolonnen i Excel -ark, og deretter vil vi definere destinasjonen for å lime inn dataene.
- Trykk på F5 for å kjøre makroen.
- Data for begge arkene blir kopiert og limt inn i et Excel -ark.
Dette er måten vi kan samle dataene i et ark fra forskjellige Excel -filer gjennom VBA i Microsoft Excel.