Trong môi trường làm việc hiện đại, dữ liệu thường được lưu trữ và chia sẻ qua nhiều file Excel. Việc quản lý, phân tích và báo cáo thường xuyên đòi hỏi chúng ta phải tổng hợp dữ liệu từ các file này vào một file duy nhất. Việc này không chỉ giúp tiết kiệm thời gian mà còn giảm thiểu sai sót khi sao chép thủ công. Bài viết dưới đây sẽ cung cấp cho bạn một loạt các phương pháp, từ các công cụ tích hợp sẵn trong Excel, các script ngôn ngữ lập trình, cho tới các phần mềm thứ ba, cùng với các mẹo, lưu ý thực tiễn để bạn có thể thực hiện công việc “tổng hợp nhiều file Excel thành 1 file” một cách hiệu quả nhất.work
Có thể bạn quan tâm: Tổng Hợp Các Hàm Thông Dụng Trong Excel
1. Tại sao nên tổng hợp dữ liệu từ nhiều file Excel?
- Tiết kiệm thời gian – Bạn không cần mở từng file, sao chép dán dữ liệu thủ công.
- Giảm sai sót – Các công cụ tự động sẽ giảm thiểu lỗi nhập liệu, sai sót khi chuyển đổi cột.
- Dễ dàng phân tích – Khi dữ liệu được lưu trữ trong một file duy nhất, các công cụ BI, Power Pivot, hoặc VBA sẽ dễ dàng truy cập.
- Quản lý phiên bản – Khi có dữ liệu cập nhật, bạn chỉ cần thay đổi file nguồn, file tổng hợp sẽ tự động cập nhật.
Có thể bạn quan tâm: Tổ Hợp Phím Ctrl + Shift + Enter Trong Excel: Cách Sử Dụng, Lợi Ích Và Những Lưu Ý Quan Trọng
2. Chuẩn bị công cụ và dữ liệu
- Excel 2026 trở lên zelf hỗ trợ Power Query.
- PowerShell hoặc Python (đặc biệt thư viện
pandas). - VBA – kiến thức cơ bản về macro.
- Add-ins như Power Query (còn gọi là Get & Transform), hoặc probeer Add-in Combine Files.
- Phần mềm thứ ba: Kutools, Excel Merger, DiffEngineX.
Trước khi bắt đầu, hãy chuẩn bị:
– Tất cả file Excel nằm trong cùng một thư mục.
– Các file có cấu trúc bảng tương đồng: tên cột giống nhau, kiểu dữ liệu đồng nhất.
– Đặt tên file gốc rõ ràng, tránh các ký tự đặc biệt.
Có thể bạn quan tâm: Tạo Số Ngẫu Nhiên Không Trùng Nhau Trong Excel: Hướng Dẫn Chi Tiết
3. Phương pháp 1: Sử dụng Power Query (Get & Transform)
3.1. Mở Power Query
- Mở Excel mới.
- Chọn tab Data → Get Data → From File → From Folder.
- Nhập đường dẫn thư mục chứa các file Excel cần tổng hợp.
- Nhấn OK.
3.2. Lọc file cần lấy
- Trong cửa sổ Folder, bạn sẽ thấy danh sách filepọlọpọ.
- Nếu cần lọc chỉ lấy file .xlsx, bạn có thể dùng Filter.
- Nhấn Combine & Load.
3.3. Tùy chỉnh dữ liệu
- Power Query sẽ mở cửa sổ Combine Files. Bạn có thể chọn Use the first row as headers.
- Tùy chỉnh các cột: loại bỏ cột không cần, đổi tên, chuyển kiểu dữ liệu.
- Khi hoàn tất, nhấn OK قالت.
3.4. Lưu kết quả
- Power Query sẽ tạo một bảng dữ liệu trong file Excel mới. Bạn có thể lưu file này dưới dạng .xlsx.
- Khi có file mới trong thư mục, chỉ cần làm Refresh để cập nhật dữ liệu.
Ưu điểm:
– Không cần viết mã.
– Tự động cập nhật khi thêm/đổi file.Nhược điểm:
– Không linh hoạt khi cần thao tác phức tạp (ví dụ: tính toán dựa trên nhiều trường).
– Đối với file lớn (thousands rows), tốc độ xử lý có thể chậm.
4. Phương pháp 2: VBA Macro
VBA cung cấp một cách mạnh mẽ để tự động hoá quá trình, đặc biệt khi bạn cần xử lý dữ liệu đặc thù.
4.1. Mẫu Macro
Sub MergeExcelFiles() Dim wbDest As Workbook Dim wsDest As Worksheet Dim folderPath As String Dim fileName As String Dim wbSource As Workbook Dim wsSource As Worksheet Dim lastRow As Long, destRow As Long ' Đặt đường dẫn thư mục folderPath = "C:\Data\ExcelFiles\" ' Tạo workbook đích Set wbDest = Workbooks.Add Set wsDest = wbDest.Sheets(1) wsDest.Name = "MergedData" ' Thêm header (giả sử file nguồn có header trong cột A1) fileName = Dir(folderPath & ".xlsx") If fileName <> "" Then Set wbSource = Workbooks.Open(folderPath & file_a) Set wsSource = wbSource.Sheets(1) wsSource.Rows(1).Copy Destination:=wsDest.Rows(1) wbSource.Close False End If destRow = 2 ' Bắt đầu ghi dữ liệu từ hàng 2 ' Lặp qua từng file Do While fileName <> "" Set wbSource = Workbooks.Open(folderPath & fileName) Set wsSource = wbSource.Sheets(1) lastRow = wsSource.Cells(wsSource.Rows.Count, "A").End(xlUp).Row ' Sao chép dữ liệu (không bao gồm header) wsSource.Range("A2", wsSource.Cells(lastRow, wsSource.Columns.Count).End(xlToLeft)).Copy _ Destination:=wsDest.Cells(destRow, 1) destRow = destRow + (lastRow - 1) wbSource.Close False fileName = Dir() ' Lấy file tiếp theo Loop MsgBox "Tổng hợp xong!"
End Sub
4.2. Hướng dẫn chạy macro
- Mở Excel, nhấn Alt + F11 để mở cửa sổ VBA.
- Chèn một module mới và dán code trên.
- Tùy chỉnh
folderPaththành thư mục chứa file. - Chạy macro bằng F5 hoặc từ tab Developer → Macros.
Lưu ý: Macro có thể bị chặn do cài đặt bảo mật. Bạn cần bật Macro trong File → Options → Trust Center.
5. Phương pháp 3: Python + pandas

Có thể bạn quan tâm: Tổng Hợp File Excel Tính Toán Kết Cấu
Python là một ngôn ngữ mã nguồn mở mạnh mẽ, rất phù hợp với xử lý dữ liệu lớn. Thư viện pandas cung cấp các hàm đọc, ghi file Excel một cách nhanh chóng.
5.1. Cài đặt môi trường
pip install pandas openpyxl
openpyxllà thư viện hỗ trợ đọc/ghi file .xlsx.pandassẽ xử lý dữ liệu thành DataFrame.
5.2. Script Python
import os
import pandas as pd # Đường dẫn thư mục chứa file
folder_path = r'C:\Data\ExcelFiles'
# Danh sách file .xlsx
files = f for f in os.listdir(folder_path) if f.endswith('.xlsx') # Dùng list để lưu DataFrame
df_list = for file in files: file_path = os.path.join(folder_path, file) # Đọc file, giả sử dữ liệu bắt đầu từ hàng 1 df = pd.read_excel(file_path, sheet_name=0) # Thêm cột tên file nguồn (tùy chọn) df'SourceFile' = file df_list.append(df) # Concatenate tất cả DataFrame
merged_df = pd.concat(df_list, ignore_index=True) # Ghi kết quả vào file mới
output_path = os.path.join(folder_path, 'MergedData.xlsx')
merged_df.to_excel(output_path, index=False) print(f'Tổng hợp thành công, file lưu tại: {output_path}')
5.3. Ưu điểm và nhược điểm
- Ưu điểm:
- Xử lý dữ liệu lớn (tên trăm nghìn row) nhanh hơn Excel.
- Dễ dàng thực hiện các phép biến đổi phức tạp (groupby, pivot).
- Có thể bàn giao script cho đồng nghiệp không cần cài Excel.
- Nhược điểm:
- Cần cài đặt Python, thư viện.
- Không trực quan như Excel cho người dùng không quen.
6. Phương pháp 4: PowerShell
PowerShell, shell script của Windows, cũng cung cấp các cmdlet để làm việc với Excel.
6.1. Script PowerShell
$folder = "C:\Data\ExcelFiles"
$files = Get-ChildItem -Path $folder -Filter .xlsx $excel = New-Object -ComObject Excel.Application
$excel.Visible = $false $mergedWorkbook = $excel.Workbooks.Add()
$mergedSheet = $mergedWorkbook.Sheets.Item(1)
$mergedSheet.Name = "MergedData" $row = 1 foreach ($file in $files) { $workbook = $excel.Workbooks.Open($file.FullName) $sheet = $workbook.Sheets.Item(1) if ($row -eq 1) { # Copy header الموافق $sheet.Rows.Item(1).Copy() $mergedSheet.Rows.Item($row).PasteSpecial() $row++ } $lastRow = $sheet.UsedRange.Rows.Count $range = $sheet.Range("A2", $sheet.Cells.Item($lastRow, $sheet.UsedRange.Columns.Count)) $range.Copy() $mergedSheet.Cells.Item($row, 1).PasteSpecial() $row += $lastRow - 1 $workbook.Close($false)
} $mergedWorkbook.SaveAs("$folder\MergedData.xlsx")
$excel.Quit()
6.2. Lưu ý
- PowerShell có thể được thực hiện nhanh, tuy nhiên xử lý file lớn có thể bị giới hạn bởi bộ nhớ.
- Cần cài đặt
COMExcel (điều kiện: có Microsoft Office cài đặt).
7. Phương pháp 5: Sử dụng add-in Kutools
Kutools là một bộ add-in cho Excel, cung cấp nhiều tính năng tiện ích, bao gồm Combine Files.
7.1. Các bước
- Mở Excel và cài Kutools (tải từ trang chính thức).
- Chọn tab Kutools Plus → Combine.
- Chọn Combine multiple Excel files → All files.
- Chọn thư mục chứa file.
- Lựa chọn các tùy chọn: giữ header, sắp xếp, loại bỏ trùng lặp.
- Nhấn OK.
Ưu điểm: Đơn giản, nhanh chóng, không cần viết code.
Nhược điểm: Có phí (phiên bản trả phí), không mở rộng khi cần tùy chỉnh phức tạp.
8. Các lưu ý khi tổng hợp dữ liệu
| # | Lưu ý | Mô tả |
|---|---|---|
| 1 | Cân đối kích thước file | Nếu file quá lớn (> 1M row), hãy chia nhỏ hoặc dùng pandas/SQL để xử lý. |
| 2 | Kiểm tra kiểu dữ liệu | Đảm bảo cột ngày, số, chuỗi đều có cùng kiểu. |
| 3 | Xử lý trùng lặp | Sử dụng tính năng Remove Duplicates trong Excel hoặc drop_duplicates() trong pandas. |
| 4 | Quản lý thư mục | Đặt file nguồn trong thư mục riêng để tránh nhầm lẫn. |
| 5 | Bảo mật | Khi dùng macro, đảm bảo macro được ký chữ ký số hoặc được bật trong cài đặt bảo mật. |
| 6 | Đặt tên file | Dùng cú pháp YYYYMMDD_Merged.xlsx để dễ dàngITION. |
9. Tối ưu hoá hiệu suất
- Sử dụng Power Query: Tự động cập nhật khi thay đổi data.
- Đặt công thức: Tránh tính toán lại hàng, dùng hàm
INDEX/MATCH. - Sử dụng
Table: Khi nhập dữ liệu vào Excel, chuyển thành bảng (Ctrl+T) để bảo toàn cấu trúc. - Bảo trì dữ liệu: Định kỳ kiểm tra dữ liệu nguồn, loại bỏ file lỗi.
10. Kết luận
Tổng hợp nhiều file Excel thành một file không chỉ là một thao tác quản lý dữ liệu mà còn là chìa khóa giúp bạn làm việc hiệu quả hơn trong môi trường doanh nghiệp. Dù bạn là người mới, hay đã có kinh nghiệm, các phương pháp dưới đây sẽ giúp bạn lựa chọn công cụ phù hợp nhất với nhu cầu và môi trường làm việc của mình. Hãy thử áp dụng một trong những cách kể trên, ghi nhận trải nghiệm, và tùy chỉnh lại để phù hợp với quy trình của bạn. Chúc bạn thành công và tiết kiệm thời gian trong công việc!

Tiến sĩ Lê Thống Nhất sinh năm 1955 tại Nghệ An, là nhà giáo, nhà báo và doanh nhân trong lĩnh vực giáo dục. Ông từng giảng dạy Toán học tại Trường THPT Chuyên Phan Bội Châu và đảm nhiệm nhiều vai trò trong ngành giáo dục, từ viết sách, biên soạn tài liệu đến sáng lập các dự án hỗ trợ học tập trực tuyến.
Ông là người sáng lập BigSchool – nền tảng giáo dục trực tuyến kết nối giáo viên và học sinh cả nước. Ngoài ra, ông còn nổi tiếng với vai trò tác giả, diễn giả truyền cảm hứng và khách mời trên nhiều chương trình truyền hình, trong đó có “Ai là triệu phú” trên truyền hình VTV.
Trong suốt sự nghiệp, Tiến sĩ Lê Thống Nhất đã nhận nhiều giải thưởng giáo dục và được biết đến như một người luôn đổi mới, ứng dụng công nghệ vào dạy và học, góp phần lan tỏa tri thức và niềm say mê học tập cho thế hệ trẻ.
