Có thể bạn quan tâm: Cách Tách Chuỗi Trong Excel Bằng Ký Tự Đặc Trưng: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
1. Giới thiệu chung
Trong công việc kinh doanh, tài chính, kế toán hay bất kỳ lĩnh vực nào cần xử lý lượng lớn dữ liệu, Microsoft Excel luôn là công cụ “đắc lực” không thể thiếu. Một trong những nhu cầu phổ biến nhất khi làm việc với Excel là tổng hợp dữ liệu từ nhiều sheet (bảng tính) khác nhau. Thay vì phải sao chép, dán thủ công, chúng ta có thể sử dụng các hàm và kỹ thuật thông minh để thực hiện việc “sum from different sheets” một cách tự động, nhanh chóng và chính xác.
Bài viết này sẽ cung cấp cho bạn một hướng dẫn toàn diện về cách thực hiện tổng hợp dữ liệu trên nhiều sheet trong Excel, bao gồm:
- Các hàm cơ bản và nâng cao (SUM, SUMIF, SUMIFS, SUMPRODUCT, 3D SUM, INDIRECT, AGGREGATE…)
- Cách tạo công thức tổng hợp động bằng tên dải (named ranges) và bảng (tables)
- Kỹ thuật sử dụng Power Query và Power Pivot để tổng hợp dữ liệu lớn
- Mẹo tối ưu hoá hiệu năng và tránh lỗi thường gặp
- Ví dụ thực tế trong các trường hợp kinh doanh, ngân sách, dự án…
Sau khi đọc xong, bạn sẽ có bộ công cụ hoàn chỉnh để giải quyết mọi yêu cầu “tổng hợp dữ liệu từ các sheet khác nhau” trong Excel, dù là trên máy tính để bàn (Excel 2026, 2026, 365) hay trên môi trường web (Excel Online).
Có thể bạn quan tâm: Cách Sắp Xếp Dữ Liệu Trong Excel Theo 2 Cột: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
2. Cơ bản: Sử dụng hàm SUM với tham chiếu 3D
2.1. Khái niệm tham chiếu 3D
Trong Excel, tham chiếu 3D là cách viết công thức để lấy cùng một vị trí ô hoặc dải ô trên nhiều sheet cùng lúc. Cú pháp chung là:
=SUM(Sheet1:SheetN!CellReference)
Trong đó:
– Sheet1 là sheet đầu tiên trong dải.
– SheetN là sheet cuối cùng trong dải.
– CellReference có thể là một ô đơn (A1) hoặc một dải ô (A1:B10).
2.2. Ví dụ thực tế
Giả sử bạn có ba sheet: Jan, Feb, Mar, mỗi sheet chứa doanh thu hàng ngày ở cột B (từ B2 đến B31). Bạn muốn tính tổng doanh thu của ba tháng trong một sheet tổng hợp Summary.
Công thức:
=SUM(Jan:Mar!B2:B31)
Khi bạn thêm một sheet mới Apr và muốn tính lại tổng, chỉ cần mở rộng dải:
=SUM(Jan:Apr!B2:B31)
2.3. Lưu ý quan trọng
- Thứ tự sheet: Dải
Sheet1:SheetNphụ thuộc vào vị trí các sheet trong thanh tab. Nếu bạn di chuyển các sheet, dải sẽ tự động cập nhật. - Không bỏ qua sheet trung gian: Nếu có một sheet không chứa dữ liệu (ví dụ: một sheet “Notes”), bạn cần đặt nó ngoài dải hoặc dùng cách khác (sử dụng hàm SUMIF/INDIRECT).
- Không áp dụng cho các sheet ẩn: Sheet ẩn vẫn được tính trong tham chiếu 3D, trừ khi bạn ẩn bằng cách “very hidden” (đặc quyền VBA).
Có thể bạn quan tâm: Excel Skills For Business Essentials: Nâng Cao Năng Lực Phân Tích Và Quản Lý Dữ Liệu Trong Doanh Nghiệp
3. Tổng hợp có điều kiện: SUMIF và SUMIFS trên nhiều sheet
3.1. Khi nào cần SUMIF/SUMIFS
Nếu bạn muốn tổng các giá trị thỏa mãn một điều kiện (ví dụ: tổng doanh thu của các ngày có doanh thu > 1000), hàm SUMIF hoặc SUMIFS là lựa chọn thích hợp. Tuy nhiên, Excel không hỗ trợ trực tiếp SUMIF trên dải sheet 3D. Chúng ta phải dùng các phương pháp thay thế.
3.2. Phương pháp 1: Dùng hàm SUMPRODUCT + INDIRECT
Giả sử các sheet Jan, Feb, Mar có cấu trúc giống nhau: cột A là ngày, cột B là doanh thu. Ta muốn tính tổng doanh thu > 1000 trong ba tháng.
Bước 1: Tạo một danh sách tên sheet trong một dải ô, ví dụ E2:E4 chứa Jan, Feb, Mar.
Bước 2: Sử dụng công thức:
=SUMPRODUCT( SUMIF( INDIRECT("'"&E2:E4&"'!A2:A31"), ">1000", INDIRECT("'"&E2:E4&"'!B2:B31") )
)
Giải thích:
– INDIRECT("'"&E2:E4&"'!A2:A31") chuyển tên sheet thành tham chiếu thực tế.
– SUMIF được áp dụng cho mỗi sheet riêng biệt.
– SUMPRODUCT cộng lại các kết quả.
3.3. Phương pháp 2: Sử dụng hàm SUMIFS trong Power Query (đề cập sau)
Nếu dữ liệu lớn hoặc bạn muốn tránh việc dùng INDIRECT (có thể làm chậm), bạn có thể import các sheet vào Power Query, gộp lại thành một bảng duy nhất, rồi dùng SUMIFS bình thường. Chúng ta sẽ chi tiết trong phần 6.
3.4. Lưu ý khi dùng INDIRECT
INDIRECTkhông hoạt động trong Excel Online (chỉ hỗ trợ trong desktop).- Hàm này không cập nhật khi bạn thêm hoặc xóa sheet nếu danh sách tên sheet không được cập nhật.
- Khi sử dụng trong workbook lớn,
INDIRECTcó thể làm giảm tốc độ tính toán đáng kể.
4. Tạo tên dải (Named Ranges) để tổng hợp linh hoạt
4.1. Lợi ích của Named Ranges
- Đọc dễ: Thay vì
Jan!B2:B31, bạn có thể dùngJanSales. - Dễ bảo trì: Khi thay đổi vị trí ô, chỉ cần cập nhật tên dải, không cần sửa công thức trên mọi sheet.
- Dễ dùng trong VBA: Khi lập trình, bạn có thể gọi tên dải trực tiếp.
4.2. Cách tạo Named Range cho mỗi sheet
- Chọn dải ô cần đặt tên (ví dụ
B2:B31trên sheet Jan). - Vào Formulas → Define Name.
- Đặt tên:
JanSales. Đảm bảo Scope là Workbook (để dùng ở bất kỳ sheet nào). - Lặp lại cho các sheet còn lại:
FebSales,MarSales.
4.3. Tổng hợp bằng Named Ranges
=SUM(JanSales, FebSales, MarSales)
Nếu muốn điều kiện, kết hợp với SUMIF:
=SUM( SUMIF(JanSales, ">1000"), SUMIF(FebSales, ">1000"), SUMIF(MarSales, ">1000")
)
4.4. Động hoá danh sách tên dải với công thức
Nếu bạn có nhiều sheet và không muốn tạo tên dải thủ công, có thể dùng VBA để tự động tạo:
Sub CreateNamedRanges() Dim ws As Worksheet For Each ws In ThisWorkbook.Worksheets If ws.Name <> "Summary" Then ThisWorkbook.Names.Add Name:=ws.Name & "Sales", RefersTo:=ws.Range("B2:B31") End If Next ws
End Sub
Sau khi chạy macro, bạn sẽ có các tên dải như JanSales, FebSales, … và có thể dùng chúng trong công thức.
5. Tổng hợp nâng cao với hàm AGGREGATE và SUMPRODUCT
5.1. Khi nào dùng AGGREGATE
AGGREGATE cho phép thực hiện các phép tính thống kê (SUM, AVERAGE, MAX, …) với tùy chọn bỏ qua lỗi, ẩn hàng. Nếu một số sheet có dữ liệu thiếu hoặc chứa lỗi, AGGREGATE giúp không làm gián đoạn toàn bộ công thức.
Ví dụ, tổng doanh thu từ các sheet Jan → Mar, nhưng Feb có một số ô lỗi #DIV/0!.
=AGGREGATE(9, 6, Jan:Mar!B2:B31)
Trong đó:
– 9 = hàm SUM.
– 6 = bỏ qua lỗi.
5.2. SUMPRODUCT để tính tổng có điều kiện trên nhiều sheet
SUMPRODUCT rất mạnh khi muốn đếm hoặc tổng hợp dựa trên nhiều tiêu chí, đồng thời có thể xử lý mảng đa chiều.
Ví dụ: Tính tổng doanh thu của các ngày thứ Hai (cột A chứa ngày) trong các sheet Jan, Feb, Mar.
=SUMPRODUCT( --(WEEKDAY(INDIRECT("'"&E2:E4&"'!A2:A31"))=2), INDIRECT("'"&E2:E4&"'!B2:B31")
)
Giải thích:
– WEEKDAY(...)=2 trả về mảng TRUE/FALSE cho các ngày thứ Hai.
– Dấu -- chuyển TRUE/FALSE thành 1/0.
– SUMPRODUCT nhân từng phần tử và cộng lại.
6. Sử dụng Power Query để gộp dữ liệu từ nhiều sheet
6.1. Tại sao Power Query?

Có thể bạn quan tâm: Excel “subscript Out Of Range”: Nguyên Nhân, Cách Khắc Phục Và Phòng Tránh Lỗi Này Trong Vba
- Xử lý dữ liệu lớn (hàng triệu) nhanh hơn so với công thức truyền thống.
- Không phụ thuộc vào công thức (giảm rủi ro lỗi công thức).
- Tự động cập nhật khi dữ liệu nguồn thay đổi (Refresh).
- Có giao diện kéo thả thân thiện cho người không chuyên.
6.2. Các bước thực hiện
Bước 1: Đánh dấu các sheet cần gộp
Giả sử các sheet cần gộp có tên bắt đầu bằng “Month_” (Month_Jan, Month_Feb, …). Đặt tên thống nhất để Power Query dễ nhận diện.
Bước 2: Mở Power Query
- Excel 2026/2026/365:
Data → Get Data → From Other Sources → Blank Query. - Hoặc
Data → Get Data → From Workbook→ Chọn chính workbook hiện tại → Chọn “Sheets”.
Bước 3: Lọc và chuyển đổi
Trong Power Query Editor:
1. Filter cột Name để chỉ giữ các sheet có tên chứa “Month_”.
2. Click Combine → Combine & Transform Data.
3. Chọn Sample File để xác định cấu trúc (cột A là Date, B là Sales, …).
4. Power Query sẽ tạo một bảng gộp lại tất cả sheet, với cột Source.Name để biết dữ liệu đến từ sheet nào.
Bước 4: Thêm cột điều kiện (nếu cần)
Ví dụ muốn chỉ giữ doanh thu > 1000:
Add Column → Custom Column:powerquery if Sales > 1000 then Sales else null- Hoặc dùng
Filter Rowsđể lọc trực tiếp.
Bước 5: Tính tổng
Home → Group By:- Group by: không cần nhóm, chỉ chọn
All Rows. - New column name:
TotalSales. - Operation:
Sum. - Column:
Sales.
Kết quả là một bảng chỉ có một hàng duy nhất chứa tổng doanh thu của tất cả sheet.
Bước 6: Load về Excel
Home → Close & Load To…→ ChọnTabletrong một sheet mới (ví dụ Summary).
6.3. Ưu nhược điểm
| Ưu điểm | Nhược điểm |
|---|---|
| Xử lý nhanh, không giới hạn số sheet | Cần học Power Query (có độ dốc học) |
| Dễ bảo trì, chỉ Refresh khi dữ liệu thay đổi | Không phù hợp với môi trường Excel Online (hạn chế Power Query) |
| Có thể tạo các báo cáo phức tạp (pivot, chart) | Đôi khi cần chuyển đổi kiểu dữ liệu thủ công |
7. Power Pivot và DAX cho tổng hợp đa chiều
Nếu bạn đang làm việc với dữ liệu lớn (hàng trăm nghìn – triệu bản ghi) và cần phân tích đa chiều, Power Pivot + DAX là lựa chọn mạnh mẽ.
7.1. Tạo Data Model
- Import các sheet vào Power Pivot (Data → Manage Data Model).
- Khi import, mỗi sheet sẽ trở thành một table.
- Đảm bảo cột ngày và cột doanh thu có kiểu dữ liệu đúng (Date, Currency).
7.2. Tạo Relationship (nếu cần)
Nếu các sheet có cùng cột khóa (ví dụ: ProductID), tạo quan hệ giữa các bảng để phân tích theo sản phẩm.
7.3. Viết công thức DAX
Tổng doanh thu toàn bộ:
DAX TotalSales = CALCULATE( SUM('Jan'Sales) + SUM('Feb'Sales) + SUM('Mar'Sales) )Tổng doanh thu với điều kiện (doanh thu > 1000):
DAX SalesAbove1000 = CALCULATE( SUM('Jan'Sales) + SUM('Feb'Sales) + SUM('Mar'Sales), 'Jan'Sales > 1000, 'Feb'Sales > 1000, 'Mar'Sales > 1000 )Tổng dựa trên bảng tổng hợp (sử dụng UNION):
DAX AllSales = UNION( SELECTCOLUMNS('Jan', "Date", 'Jan'Date, "Sales", 'Jan'Sales), SELECTCOLUMNS('Feb', "Date", 'Feb'Date, "Sales", 'Feb'Sales), SELECTCOLUMNS('Mar', "Date", 'Mar'Date, "Sales", 'Mar'Sales) )
Sau đó:DAX TotalAllSales = CALCULATE(SUM(AllSalesSales))
7.4. Khi nào nên dùng Power Pivot?
- Khi dữ liệu quá lớn cho các công thức truyền thống.
- Khi cần phân tích đa chiều, tạo báo cáo PivotTable nhanh.
- Khi muốn tái sử dụng mô hình dữ liệu trong các báo cáo khác.
8. Các tình huống thực tiễn và ví dụ chi tiết
8.1. Kế toán: Tổng hợp chi phí từ các phòng ban
- Mỗi phòng ban có một sheet riêng (
HR,IT,Marketing,Sales). - Cột A: Mã chi phí, Cột B: Số tiền.
- Muốn tính tổng chi phí và chi phí > 5,000.
Công thức nhanh:
=SUM(HR:Sales!B2:B100) // Tổng
=SUMPRODUCT(SUMIF(INDIRECT("'"&E2:E5&"'!B2:B100"),">5000")) // >5,000
8.2. Bán hàng: Tổng doanh thu theo nhân viên trên nhiều khu vực
- Sheet
North,South,East,West. - Cột A: Tên nhân viên, Cột B: Doanh thu.
- Muốn biết tổng doanh thu của John.
Công thức:
=SUMPRODUCT( SUMIF(INDIRECT("'"&E2:E5&"'!A2:A200"), "John", INDIRECT("'"&E2:E5&"'!B2:B200"))
)
8.3. Dự án: Theo dõi tiến độ công việc
- Mỗi dự án là một sheet (
Proj1,Proj2, …). - Cột A: Nhiệm vụ, Cột B: % hoàn thành.
- Muốn tính trung bình % hoàn thành của tất cả dự án.
Cách 1: Dùng AVERAGE 3D (không có, vì 3D không hỗ trợ AVERAGE). Thay vào đó dùng AGGREGATE.
=AGGREGATE(1, 6, Proj1:Proj5!B2:B50) / COUNTA(Proj1:Proj5!B2:B50)
1 là hàm AVERAGE, 6 bỏ qua lỗi.
8.4. Tài chính: Tổng lãi suất từ các năm
- Sheet
2026,2026,2026,2026. - Cột C: Lãi suất hàng tháng.
- Muốn tính tổng lãi suất và lãi suất trung bình.
=SUM(2026:2026!C2:C13) // Tổng
=AGGREGATE(1, 6, 2026:2026!C2:C13) // Trung bình (bỏ qua lỗi)
9. Tối ưu hoá hiệu suất và tránh lỗi thường gặp
9.1. Tránh sử dụng INDIRECT trong workbook lớn
INDIRECT là hàm volatile, nghĩa là mỗi khi workbook tính lại, nó sẽ tái tính lại dù không có thay đổi nào liên quan. Điều này gây chậm cho:
- Workbook có hàng ngàn công thức.
- Khi dùng
INDIRECTcho 100+ sheet.
Giải pháp: Dùng Power Query, named ranges, hoặc VBA để tạo công thức tĩnh.
9.2. Kiểm tra lỗi #REF! và #VALUE!
- Khi một sheet bị xóa nhưng vẫn còn trong công thức, Excel sẽ trả lỗi
#REF!. - Khi dải ô không khớp (số hàng khác nhau) trong công thức mảng, có thể xuất hiện
#VALUE!.
Cách phòng tránh:
– Sử dụng IFERROR hoặc AGGREGATE để bỏ qua lỗi.
– Đặt sheet “Start” và sheet “End” làm ranh giới cố định; các sheet thực tế nằm giữa chúng. Ví dụ:
=SUM(Start:End!B2:B31)
Khi thêm sheet mới, chỉ cần chèn chúng giữa Start và End.
9.3. Giảm kích thước workbook
- Loại bỏ các format không cần thiết (color, borders) trên toàn bộ sheet.
- Xóa các named ranges không dùng.
- Sử dụng binary workbook (.xlsb) để giảm dung lượng nếu dữ liệu lớn.
9.4. Kiểm tra tính nhất quán cấu trúc sheet
Nếu các sheet có cột khác nhau hoặc độ dài dải khác nhau, các công thức 3D sẽ trả lỗi. Đảm bảo:
– Cùng vị trí cột (A, B, C…) cho các trường dữ liệu.
– Cùng số hàng (hoặc ít nhất, đủ lớn để bao phủ dữ liệu lớn nhất).
10. Tự động hoá bằng VBA: Tạo hàm tổng hợp tùy chỉnh
10.1. Viết hàm UDF (User Defined Function)
Function SumSheets(rngAddress As String, ParamArray sheetNames() As Variant) As Double Dim ws As Worksheet Dim total As Double Dim i As Long For i = LBound(sheetNames) To UBound(sheetNames) Set ws = ThisWorkbook.Worksheets(sheetNames(i)) total = total + Application.WorksheetFunction.Sum(ws.Range(rngAddress)) Next i SumSheets = total
End Function
Cách dùng trong Excel:
=SumSheets("B2:B31", "Jan", "Feb", "Mar")
10.2. Hàm UDF có điều kiện
Function SumIfSheets(rngAddress As String, crit As String, ParamArray sheetNames() As Variant) As Double Dim ws As Worksheet Dim total As Double Dim i As Long For i = LBound(sheetNames) To UBound(sheetNames) Set ws = ThisWorkbook.Worksheets(sheetNames(i)) total = total + Application.WorksheetFunction.SumIf(ws.Range(rngAddress), crit, ws.Range(rngAddress)) Next i SumIfSheets = total
End Function
Ví dụ:
=SumIfSheets("B2:B31", ">1000", "Jan", "Feb", "Mar")
10.3. Khi nào nên dùng VBA?
- Khi công thức phức tạp, cần đọc dễ, bảo trì.
- Khi muốn gửi email báo cáo tự động sau khi tính tổng.
- Khi cần tích hợp với các hệ thống khác (SQL, API) qua macro.
11. Tổng kết
Việc tổng hợp dữ liệu Excel từ nhiều sheet không còn là công việc tẻ nhạt hay mất thời gian nếu bạn nắm vững các công cụ và kỹ thuật dưới đây:
- Tham chiếu 3D (
SUM(Sheet1:SheetN!Range)) – nhanh, đơn giản, thích hợp cho dữ liệu đồng nhất. - SUMIF / SUMIFS kết hợp INDIRECT hoặc named ranges – cho tổng có điều kiện.
- AGGREGATE và SUMPRODUCT – xử lý lỗi, tính toán đa tiêu chí.
- Power Query – gộp, chuyển đổi, làm sạch dữ liệu lớn, tạo báo cáo tự động.
- Power Pivot + DAX – phân tích đa chiều, mô hình dữ liệu phức tạp.
- VBA/UDF – tự động hoá, tạo hàm tùy chỉnh, giảm độ phức tạp công thức.
- Kỹ thuật tối ưu – tránh volatile functions, duy trì cấu trúc sheet, dùng sheet “Start/End” để bảo vệ dải.
Bằng cách kết hợp những phương pháp này, bạn có thể tự tin xử lý bất kỳ yêu cầu tổng hợp dữ liệu nào, từ những bảng tính đơn giản chỉ có vài sheet cho tới những dự án phân tích dữ liệu quy mô doanh nghiệp. Hãy thử áp dụng ngay vào công việc thực tế của bạn, và đừng ngại khám phá thêm các tính năng mới của Excel – công cụ này luôn có cách để làm cho công việc của bạn trở nên nhanh hơn, thông minh hơn và ít lỗi hơn. Chúc bạn thành công!

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ẻ.
