Jak przeglądać pliki w katalogu i kopiować dane do arkusza wzorcowego w programie Excel?
Przypuśćmy, że w folderze znajduje się wiele skoroszytów programu Excel i chcesz przejrzeć wszystkie te pliki programu Excel i skopiować dane z określonego zakresu arkuszy o tej samej nazwie do głównego arkusza w programie Excel, co możesz zrobić? W tym artykule szczegółowo przedstawiono metodę osiągnięcia tego celu.
Przeglądaj pliki w katalogu i kopiuj dane do arkusza wzorcowego z kodem VBA
Przeglądaj pliki w katalogu i kopiuj dane do arkusza wzorcowego z kodem VBA
Jeśli chcesz skopiować określone dane z zakresu A1: D4 ze wszystkich skoroszytów arkusza 1 w określonym folderze do arkusza głównego, wykonaj następujące czynności.
1. W skoroszycie utworzysz główny arkusz roboczy, naciśnij inny + F11 klawisze, aby otworzyć Microsoft Visual Basic for Applications okno.
2. w Microsoft Visual Basic for Applications okno, kliknij wstawka > Moduł. Następnie skopiuj poniższy kod VBA do okna kodu.
Kod VBA: przeglądaj pliki w folderze i kopiuj dane do arkusza głównego
Sub Merge2MultiSheets()
Dim xRg As Range
Dim xSelItem As Variant
Dim xFileDlg As FileDialog
Dim xFileName, xSheetName, xRgStr As String
Dim xBook, xWorkBook As Workbook
Dim xSheet As Worksheet
On Error Resume Next
Application.DisplayAlerts = False
Application.EnableEvents = False
Application.ScreenUpdating = False
xSheetName = "Sheet1"
xRgStr = "A1:D4"
Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
With xFileDlg
If .Show = -1 Then
xSelItem = .SelectedItems.Item(1)
Set xWorkBook = ThisWorkbook
Set xSheet = xWorkBook.Sheets("New Sheet")
If xSheet Is Nothing Then
xWorkBook.Sheets.Add(after:=xWorkBook.Worksheets(xWorkBook.Worksheets.Count)).Name = "New Sheet"
Set xSheet = xWorkBook.Sheets("New Sheet")
End If
xFileName = Dir(xSelItem & "\*.xlsx", vbNormal)
If xFileName = "" Then Exit Sub
Do Until xFileName = ""
Set xBook = Workbooks.Open(xSelItem & "\" & xFileName)
Set xRg = xBook.Worksheets(xSheetName).Range(xRgStr)
xRg.Copy xSheet.Range("A65536").End(xlUp).Offset(1, 0)
xFileName = Dir()
xBook.Close
Loop
End If
End With
Application.DisplayAlerts = True
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Note:
3. wciśnij F5 klucz do uruchomienia kodu.
4. W otwarciu Przeglądaj wybierz folder zawierający pliki, które chcesz przeglądać, a następnie kliknij OK przycisk. Zobacz zrzut ekranu:
Następnie na końcu bieżącego skoroszytu tworzony jest główny arkusz o nazwie „Nowy arkusz”. Dane w zakresie A1: D4 wszystkich Arkusz1 w wybranym folderze są wymienione w arkuszu.
Podobne artykuły:
Najlepsze narzędzia biurowe
Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas. Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...
Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę
- Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
- Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
- Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!