I denne artikel skal vi lære at samle data fra forskellige projektmapper via VBA i Microsoft Excel.
Lad os forstå med en simpel øvelse, hvordan man fletter regneark gennem VBA i Microsoft Excel.
Vi har 3 forskellige Excel -filer. 2 filer er til xlsx, og en fil er til xlsm i en mappe. Vi vil samle begge datasæt i Excel -fil for at huske på få ting, at i hver data kan rækker og kolonner øges og formindskes, og vi kender heller ikke Excel -filnavne, og hvor mange filer er der i en mappe .
I dette ark vil vi kombinere dataene:-
1st Data:-
2nd Data:-
3rd Data:-
Nu vil vi samle dataene i et ark. Vi skal følge nedenstående trin og kode:-
- Tryk på tasten Alt+F11 for at åbne VBE -siden for at skrive makroen.
- Gå derefter til fanen Indsæt og indsæt et modul.
- Skriv nedenstående kode på siden.
Sub Collate_Data ()
Dim FolderpathAs String, filePath As String, Filnavn As String
Folderpath = "E: \ Excel Tips \ Nye VBA -emner \ HR Data \" ‘(nævne filstien)
filePath = Folderpath & "*xls*"
Filnavn = Dir (filePath)
Dim LastrowSom Long, Lastcolumn As Long
Gø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, Lastcolumn)). Kopier
Application.DisplayAlerts = Falsk
ActiveWorkbook.Close
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
Sløjfe
Application.DisplayAlerts = True
Afslut Sub
Kodeforklaring: - For det første vil vi definere alle variablerne, som vi skal bruge, mens vi beskriver koden. Derefter vil vi bruge Do While loop in code til at køre programmet til alle Excel -filer. Derefter definerer vi stien til filer, og derefter definerer vi den sidste række og kolonne i Excel -ark, og derefter definerer vi destinationen for at indsætte dataene.
- Tryk på tasten F5 for at køre makroen.
- Data for begge ark kopieres og indsættes i et Excel -ark.
Dette er den måde, vi kan samle dataene i et ark fra forskellige Excel -filer via VBA i Microsoft Excel.