Nếu bạn có nhiều tệp Excel cần phải hợp nhất thành một tệp, cách nhanh hơn là tự động hóa quy trình bằng macro VBA.
Dưới đây bạn sẽ tìm thấy mã VBA sao chép tất cả các trang tính từ tất cả các tệp Excel mà bạn chọn vào một sổ làm việc.
Sub MergeExcelFiles()
Dim fnameList, fnameCurFile As Variant
Dim countFiles, countSheets As Integer
Dim wksCurSheet As Worksheet
Dim wbkCurBook, wbkSrcBook As Workbook
fnameList = Application.GetOpenFilename(FileFilter:="Microsoft Excel Workbooks (*.xls;*.xlsx;*.xlsm),*.xls;*.xlsx;*.xlsm", Title:="Choose Excel files to merge", MultiSelect:=True)
If (vbBoolean <> VarType(fnameList)) Then
If (UBound(fnameList) > 0) Then
countFiles = 0
countSheets = 0
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Set wbkCurBook = ActiveWorkbook
For Each fnameCurFile In fnameList
countFiles = countFiles + 1
Set wbkSrcBook = Workbooks.Open(Filename:=fnameCurFile)
For Each wksCurSheet In wbkSrcBook.Sheets
countSheets = countSheets + 1
wksCurSheet.Copy after:=wbkCurBook.Sheets(wbkCurBook.Sheets.Count)
Next
wbkSrcBook.Close SaveChanges:=False
Next
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
MsgBox "Processed " & countFiles & " files" & vbCrLf & "Merged " & countSheets & " worksheets", Title:="Merge Excel files"
End If
Else
MsgBox "No files selected", Title:="Merge Excel files"
End If
End Sub
Cách thêm macro này vào sổ làm việc của bạn
Nếu bạn muốn chèn macro vào sổ làm việc của riêng mình, hãy thực hiện các bước thông thường sau:
- NhấnAlt + F11để mở Trình soạn thảo Visual Basic.
- Bấm chuột phải vào ThisWorkbook ở khung bên trái và chọn Insert > Module.
- Trong cửa sổ xuất hiện (Cửa sổ mã), dán đoạn mã trên.
Cách sử dụng macro MergeExcelFiles
Mở tệp Excel mà bạn muốn hợp nhất các trang tính từ các sổ làm việc khác và thực hiện như sau:
- NhấnAlt + F8để mở hộp thoại Macro .
- Dưới Tên macro , chọn MergeExcelFiles và nhấp vào Chạy .
Cửa sổ explorer chuẩn sẽ mở ra, bạn chọn một hoặc nhiều bảng tính muốn kết hợp và nhấn Open . Để chọn nhiều file , giữ phím Ctrl đồng thời click vào tên file.
Tùy thuộc vào số lượng tệp bạn đã chọn, hãy cho phép macro vài giây hoặc vài phút để xử lý chúng. Sau khi macro hoàn tất, nó sẽ thông báo cho bạn biết có bao nhiêu tệp đã được xử lý và bao nhiêu trang tính đã được hợp nhất
0 Comments