Як прокрутити файли в каталозі та скопіювати дані на головний аркуш у Excel?
Припустимо, що в папці є кілька книг Excel, і ви хочете прокрутити всі ці файли Excel і скопіювати дані із зазначеного діапазону одноіменних аркушів на головний аркуш у Excel, що ви можете зробити? У цій статті детально представлений спосіб його досягнення.
Переглядайте файли в каталозі та копіюйте дані у головний аркуш із кодом VBA
Переглядайте файли в каталозі та копіюйте дані у головний аркуш із кодом VBA
Якщо ви хочете скопіювати вказані дані в діапазоні A1: D4 з усіх аркушів1 книг у певній папці на головний аркуш, виконайте наступні дії.
1. У книзі ви створите головний аркуш, натисніть клавішу інший + F11 ключі, щоб відкрити Microsoft Visual Basic для додатків вікна.
2 В Microsoft Visual Basic для додатків вікна, натисніть Insert > Модулі. Потім скопіюйте нижче код VBA у вікно коду.
Код VBA: прокручуйте файли в папці та копіюйте дані у головний аркуш
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
примітки:
3 Натисніть кнопку F5 клавіша для запуску коду.
4. На відкритті перегорнути вікно, виберіть папку, яка містить файли, через які ви проходите цикл, а потім клацніть на OK кнопку. Дивіться знімок екрана:
Потім у кінці поточної книги створюється головний аркуш із назвою "Новий аркуш". А дані в діапазоні A1: D4 усіх аркушів1 у вибраній папці перераховані всередині робочого аркуша.
Статті по темі:
Найкращі інструменти продуктивності офісу
Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу. Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...
Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу
- Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
- Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
- Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!