Có thể bạn quan tâm: Tìm Kiếm Trên Excel 2026: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
Lời mở đầu
Excel là một trong những công cụ phần mềm phổ biến nhất hiện nay, được sử dụng rộng rãi trong các lĩnh vực như kế toán, tài chính, quản trị doanh nghiệp, giáo dục và thậm chí trong công việc cá nhân. Một trong những thao tác cơ bản và thường xuyên nhất mà người dùng Excel phải thực hiện là tính tổng hàng dọc – tức là cộng lại các giá trị nằm trong một cột (hoặc một dải ô theo chiều dọc). Dù nghe có vẻ đơn giản, nhưng thực tế có rất nhiều cách để thực hiện việc này, từ các công thức cơ bản cho tới các hàm nâng cao, từ việc sử dụng tính năng tự động của Excel tới việc viết macro VBA để tự động hoá quy trình.
Bài viết này sẽ cung cấp cho bạn một hướng dẫn chi tiết, toàn diện và thực tiễn về cách tính tổng hàng dọc trong Excel, bao gồm:
- Giới thiệu tổng quan về các hàm tính tổng – SUM, SUBTOTAL, AGGREGATE và các hàm liên quan.
- Cách sử dụng công cụ AutoSum – nhanh gọn cho người mới bắt đầu.
- Công thức cơ bản với hàm SUM – cách áp dụng cho các dải ô, dải ô không liên tục và dải ô động.
- Sử dụng hàm SUBTOTAL và AGGREGATE – tính tổng khi có lọc dữ liệu hoặc ẩn hàng.
- Kỹ thuật tính tổng có điều kiện – SUMIF, SUMIFS, và công thức mảng.
- Tính tổng theo nhóm (group) bằng PivotTable – cách nhanh chóng tổng hợp dữ liệu lớn.
- Sử dụng tính năng Data → Consolidate – tổng hợp từ nhiều bảng.
- Tự động hoá bằng VBA – viết macro để tính tổng hàng dọc tự động.
- Mẹo tối ưu hoá hiệu suất – giảm lag khi làm việc với dữ liệu lớn.
- Các lỗi thường gặp và cách khắc phục – #VALUE!, #REF!, và các vấn đề định dạng.
Sau khi đọc xong bài viết, bạn sẽ nắm vững mọi cách tính tổng hàng dọc trong Excel, có thể lựa chọn phương pháp phù hợp nhất với tình huống thực tế, và biết cách xử lý các vấn đề thường gặp để làm việc hiệu quả hơn.
Có thể bạn quan tâm: Trắc Nghiệm Word, Excel, Powerpoint: Hướng Dẫn Toàn Diện Đánh Giá Kiến Thức Văn Phòng
1. Tổng quan về các hàm tính tổng trong Excel
1.1 Hàm SUM
SUM là hàm cơ bản nhất, được thiết kế để cộng các giá trị số trong một dải ô hoặc nhiều dải ô. Cú pháp:
SUM(number1, number2, …)
- number1, number2, …: là các số, ô chứa số, hoặc dải ô cần tính tổng.
- Hàm này bỏ qua các ô chứa văn bản, lỗi, hoặc ô trống.
1.2 Hàm SUBTOTAL
SUBTOTAL được dùng khi bạn cần tính tổng của một dải ô đã được lọc (filter) hoặc ẩn (hide). Nó có khả năng tính tổng, trung bình, đếm, v.v. tùy thuộc vào hàm con (function_num) bạn chọn.
Cú pháp:
SUBTOTAL(function_num, ref1, ref2, …)
- function_num: 1‑11 cho tính toán trên dữ liệu đã hiển thị (bao gồm cả ẩn bằng cách collapse), 101‑111 cho tính toán chỉ trên dữ liệu hiển thị (bỏ qua các hàng ẩn bằng filter).
- ref1, ref2: dải ô cần tính.
Ví dụ: =SUBTOTAL(9, B2:B100) tính tổng (function_num = 9) của cột B, chỉ tính các giá trị hiển thị nếu bạn dùng 109.
1.3 Hàm AGGREGATE
AGGREGATE là phiên bản nâng cao hơn của SUBTOTAL, cung cấp thêm 12 hàm thống kê và khả năng bỏ qua lỗi, ẩn, và các giá trị ngoại lệ. Cú pháp:
AGGREGATE(function_num, options, array, k)
- function_num: giống như trong SUBTOTAL, nhưng có thêm các hàm như SMALL, LARGE, PERCENTILE, v.v.
- options: 0‑7, quy định cách bỏ qua lỗi, ẩn, và các giá trị.
- array: dải ô hoặc mảng.
- k: tham số phụ cho một số hàm (ví dụ, k‑th smallest).
Ví dụ: =AGGREGATE(9, 5, B2:B100) tính tổng (9) bỏ qua các lỗi và các hàng ẩn.
Có thể bạn quan tâm: Cách Khôi Phục Và Đặt Lại Mật Khẩu Excel 2003 Khi Quên Mật Khẩu: Hướng Dẫn Chi Tiết Từ A Đến Z
2. Sử dụng công cụ AutoSum – Phương pháp nhanh cho người mới
AutoSum là biểu tượng Σ nằm trên thanh Ribbon (tab Home). Khi bạn click vào biểu tượng này, Excel tự động đưa ra công thức SUM cho dải ô liền kề phía trên (hoặc bên trái) của ô đang chọn.
Các bước thực hiện:
- Chọn ô dưới cùng của cột bạn muốn tính tổng (hoặc ô bên phải của hàng muốn tính tổng).
- Nhấn biểu tượng AutoSum (hoặc phím tắt
Alt+=). - Kiểm tra dải ô Excel đề xuất. Nếu đúng, Enter để xác nhận; nếu không, chỉnh sửa dải ô bằng cách kéo chuột hoặc gõ trực tiếp.
- Kết quả sẽ hiển thị ngay trong ô bạn đã chọn.
Lưu ý:
- AutoSum chỉ hoạt động tốt khi dữ liệu được sắp xếp gọn gàng, không có ô trống giữa các giá trị.
- Nếu có nhiều cột liên tiếp cần tính tổng, bạn có thể kéo công thức sang các ô bên cạnh để sao chép nhanh.
3. Công thức cơ bản với hàm SUM
3.1 Cộng toàn bộ một cột
Giả sử bạn có dữ liệu trong cột B từ B2 đến B1000 và muốn tính tổng:
=SUM(B2:B1000)
Nếu muốn tính tổng toàn bộ cột B (bao gồm cả các ô chưa có dữ liệu), bạn có thể viết:
=SUM(B:B)
Cảnh báo: Khi dùng
SUM(B:B), Excel sẽ tính cả các ô tiêu đề hoặc ô chứa văn bản nếu chúng được chuyển đổi thành số (ví dụ, “123”). Đảm bảo tiêu đề ở hàng đầu tiên hoặc dùngSUM(B2:B1048576)để tránh tính tiêu đề.
3.2 Cộng các ô không liên tiếp
Nếu bạn muốn cộng các ô B2, B5, B8:
=SUM(B2, B5, B8)
Hoặc dùng dải ô không liên tục:
=SUM(B2:B5, B8:B10, B15)
3.3 Dải ô động (Dynamic Range) với hàm OFFSET và COUNTA
Khi danh sách dữ liệu thay đổi độ dài, bạn có thể tạo dải ô động:
=SUM(OFFSET(B1,1,0,COUNTA(B:B)-1,1))
Giải thích:
OFFSET(B1,1,0,…)bắt đầu từ ô B2.COUNTA(B:B)-1đếm số ô có dữ liệu trong cột B, trừ tiêu đề.- Hàm
SUMsẽ cộng toàn bộ dải được tạo ra.
3.4 Sử dụng Table (Bảng) để tính tổng tự động
Nếu bạn chuyển dải dữ liệu thành Table (Insert → Table hoặc Ctrl+T), Excel sẽ tự tạo các công thức có tên cột:
=SUM(Table1Doanh Thu)
Khi bạn thêm hoặc xóa hàng trong Table, dải ô trong công thức sẽ tự cập nhật.
4. Sử dụng hàm SUBTOTAL và AGGREGATE
4.1 Khi dữ liệu được lọc (Filter)
Giả sử bạn áp dụng AutoFilter cho bảng dữ liệu và muốn tính tổng chỉ các hàng hiển thị:
=SUBTOTAL(9, B2:B1000) // 9 = SUM, tính cả các hàng ẩn bằng Collapse
=SUBTOTAL(109, B2:B1000) // 109 = SUM, bỏ qua các hàng ẩn bởi Filter
4.2 Khi có các hàng ẩn (Hide)
Nếu bạn ẩn một số hàng thủ công (right‑click → Hide), SUBTOTAL(9, …) vẫn sẽ tính chúng, trong khi SUBTOTAL(109, …) sẽ bỏ qua.

Có thể bạn quan tâm: Hàm Tính Bình Quân Trong Excel: Hướng Dẫn Toàn Diện Từ Cơ Bản Đến Nâng Cao
4.3 AGGREGATE – Bỏ qua lỗi và các giá trị không mong muốn
Ví dụ: Dữ liệu của bạn có một số ô chứa lỗi #DIV/0!. Để tính tổng mà không bị lỗi:
=AGGREGATE(9, 6, B2:B1000) // 6 = bỏ qua lỗi
Nếu đồng thời muốn bỏ qua các hàng ẩn:
=AGGREGATE(9, 5, B2:B1000) // 5 = bỏ qua lỗi + bỏ qua các hàng ẩn
5. Tính tổng có điều kiện – SUMIF, SUMIFS và công thức mảng
5.1 SUMIF – tổng một điều kiện duy nhất
Cú pháp:
SUMIF(range, criteria, sum_range)
- range: dải ô chứa tiêu chí.
- criteria: điều kiện (có thể là số, chuỗi, hoặc biểu thức).
- sum_range: dải ô cần cộng (nếu khác
range).
Ví dụ: Tính tổng doanh thu (cột C) của các sản phẩm thuộc nhóm “A” (cột B):
=SUMIF(B2:B1000, "A", C2:C1000)
5.2 SUMIFS – tổng đa điều kiện
Cú pháp:
SUMIFS(sum_range, criteria_range1, criteria1, criteria_range2, criteria2, …)
Ví dụ: Tổng doanh thu của nhóm “A” trong tháng 1 (cột D chứa tháng):
=SUMIFS(C2:C1000, B2:B1000, "A", D2:D1000, 1)
5.3 Công thức mảng (Array Formula) – SUMPRODUCT
Khi bạn cần tính tổng dựa trên nhiều tiêu chí phức tạp mà SUMIFS không hỗ trợ, SUMPRODUCT là một lựa chọn mạnh mẽ.
Ví dụ: Tổng doanh thu của nhóm “A” hoặc “B” và giá trị > 1000:
=SUMPRODUCT((B2:B1000={"A","B"})(C2:C1000>1000)C2:C1000)
Bạn cũng có thể dùng công thức mảng truyền thống (Ctrl+Shift+Enter) như:
=SUM(IF((B2:B1000="A")(C2:C1000>1000), C2:C1000))
Nhấn Ctrl+Shift+Enter để xác nhận.
5.4 SUMIFS với wildcard (dấu đại diện)
đại diện cho bất kỳ chuỗi ký tự nào.?đại diện cho một ký tự duy nhất.
Ví dụ: Tổng các giá trị trong cột C khi cột B chứa từ “Apple” bất kỳ phần cuối:
=SUMIFS(C2:C1000, B2:B1000, "Apple")
6. Tính tổng theo nhóm (Group) bằng PivotTable
PivotTable là công cụ mạnh mẽ để tổng hợp, phân nhóm, và phân tích dữ liệu lớn. Đối với việc tính tổng hàng dọc, PivotTable cho phép bạn:
- Kéo trường cần tính tổng vào vùng Values → mặc định là
Sum. - Kéo trường phân nhóm (ví dụ: “Khu vực”, “Nhân viên”) vào vùng Rows hoặc Columns.
- Lọc, sắp xếp, và định dạng kết quả nhanh chóng.
Các bước tạo PivotTable:
- Chọn bất kỳ ô nào trong bảng dữ liệu.
- Vào Insert → PivotTable.
- Xác định nguồn dữ liệu (có thể là Table hoặc dải ô) và vị trí đặt PivotTable.
- Kéo trường Doanh Thu vào Values, trường Khu vực vào Rows, và nếu muốn lọc theo thời gian, kéo Tháng vào Filters.
- Kết quả sẽ hiển thị tổng doanh thu cho mỗi khu vực, tự động cập nhật khi dữ liệu thay đổi.
PivotTable còn hỗ trợ Refresh (F5) để cập nhật nhanh khi dữ liệu gốc thay đổi.
7. Sử dụng tính năng Data → Consolidate để tổng hợp từ nhiều bảng
Khi bạn có nhiều bảng dữ liệu (có cấu trúc giống nhau) trên các sheet khác nhau và muốn tổng hợp chúng thành một tổng chung, Data → Consolidate là một công cụ hữu ích.
Các bước thực hiện:
- Chuẩn bị: Các bảng cần tổng hợp phải có cùng tiêu đề cột và cùng thứ tự.
- Chọn ô đích trên sheet mới (hoặc sheet hiện tại) nơi bạn muốn đặt kết quả.
- Vào Data → Consolidate.
- Function: Chọn
Sum. - Reference: Nhấn Add và chọn dải ô của từng bảng (có thể là
Sheet1!$B$2:$B$100,Sheet2!$B$2:$B$100, …). - Tick vào
Top rowvàLeft columnnếu dữ liệu có tiêu đề. - OK → Excel sẽ tạo ra tổng hợp các giá trị theo cột.
Tùy chọn Create links to source data cho phép bảng tổng hợp tự động cập nhật khi dữ liệu gốc thay đổi.
8. Tự động hoá bằng VBA – Viết macro tính tổng hàng dọc
Đối với các công việc lặp đi lặp lại (ví dụ: tính tổng cho 50 cột khác nhau, hoặc tính tổng cho các sheet mới tạo), viết macro VBA sẽ tiết kiệm thời gian đáng kể.
8.1 Macro đơn giản tính tổng một cột
Sub TongCot() Dim ws As Worksheet Dim lastRow As Long Dim col As String Set ws = ThisWorkbook.Sheets("Dulieu") 'Tên sheet chứa dữ liệu col = "B" 'Cột cần tính tổng lastRow = ws.Cells(ws.Rows.Count, col).End(xlUp).Row ws.Range(col & lastRow + 1).Formula = "=SUM(" & col & "2:" & col & lastRow & ")"
End Sub
- Giải thích: Macro tìm dòng cuối cùng có dữ liệu trong cột B, sau đó đặt công thức
SUMvào ô ngay dưới cùng.
8.2 Macro tính tổng cho nhiều cột cùng lúc
Sub TongNhieuCot() Dim ws As Worksheet Dim lastRow As Long Dim startCol As Long, endCol As Long, c As Long Set ws = ThisWorkbook.Sheets("Dulieu") startCol = 2 'B = 2 endCol = 5 'E = 5 lastRow = ws.Cells(ws.Rows.Count, startCol).End(xlUp).Row For c = startCol To endCol ws.Cells(lastRow + 1, c).Formula = "=SUM(" & ws.Cells(2, c).Address & ":" & ws.Cells(lastRow, c).Address & ")" Next c
End Sub
- Lưu ý: Đảm bảo rằng tất cả các cột có cùng số dòng dữ liệu; nếu không, bạn có thể tính
lastRowcho từng cột riêng biệt.
8.3 Macro tính tổng có điều kiện (SUMIF)
Sub TongCoDieuKien() Dim ws As Worksheet Dim lastRow As Long Dim criteria As String Set ws = ThisWorkbook.Sheets("Dulieu") criteria = "A" 'Ví dụ: nhóm A lastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row ws.Range("F2").Formula = "=SUMIF(B2:B" & lastRow & ",""" & criteria & """,C2:C" & lastRow & ")"
End Sub
Macro này đặt công thức SUMIF vào ô F2, tính tổng cột C cho những hàng có cột B = “A”.
9. Mẹo tối ưu hoá hiệu suất khi tính tổng trên dữ liệu lớn
- Tránh sử dụng toàn cột (B:B) trong các công thức tính tổng nếu dữ liệu không thực sự chiếm toàn bộ cột. Điều này làm tăng thời gian tính toán vì Excel phải duyệt tới 1.04 triệu hàng.
- Sử dụng Table hoặc dải ô động để giới hạn phạm vi tính toán.
- Tắt tính năng Automatic Calculation khi thực hiện thay đổi lớn, sau đó Manual → Calculate (F9) khi hoàn thành.
- Sử dụng hàm AGGREGATE thay vì lồng nhiều hàm IF trong công thức mảng, giúp giảm độ phức tạp.
- Giảm số lượng định dạng có điều kiện (Conditional Formatting) trên cột đang tính tổng, vì mỗi lần tính lại sẽ gây tải cho CPU.
- Sử dụng Power Query để tiền xử lý và tổng hợp dữ liệu trước khi đưa vào Excel nếu dữ liệu vượt quá 100.000 dòng.
10. Các lỗi thường gặp và cách khắc phục
| Lỗi | Nguyên nhân | Cách khắc phục |
|---|---|---|
| #VALUE! | Có ô chứa văn bản không thể chuyển thành số trong dải SUM. | Kiểm tra và loại bỏ hoặc chuyển đổi dữ liệu thành số (Data → Text to Columns, hoặc VALUE()). |
| #REF! | Tham chiếu ô đã bị xóa hoặc di chuyển. | Kiểm tra công thức, sửa lại phạm vi tham chiếu. |
| #DIV/0! | Công thức chia cho 0 (thường xuất hiện trong SUMIF khi tiêu chí không tồn tại). | Sử dụng IFERROR: =IFERROR(SUMIF(...),0). |
| Tổng không cập nhật | Đã bật tính toán thủ công (Manual). | Vào Formulas → Calculation Options → Automatic hoặc nhấn F9. |
| Kết quả sai khi có hàng ẩn | Dùng SUM thay vì SUBTOTAL/AGGREGATE. | Thay SUM bằng SUBTOTAL(109, …) hoặc AGGREGATE(9,5,…). |
| Tổng quá lớn (Overflow) | Dữ liệu vượt quá giới hạn số của Excel (≈9.99E+307). | Kiểm tra lại dữ liệu, chia thành các nhóm tính riêng, hoặc dùng Power Pivot. |
Kết luận
Việc tính tổng hàng dọc trong Excel không chỉ dừng lại ở việc nhập công thức =SUM(A:A). Tùy vào bối cảnh thực tế – dữ liệu có lọc, ẩn, cần tính tổng có điều kiện, hoặc tổng hợp từ nhiều nguồn – chúng ta có thể lựa chọn các công cụ và hàm phù hợp: AutoSum, SUM, SUBTOTAL, AGGREGATE, SUMIF/SUMIFS, PivotTable, Consolidate, thậm chí là VBA để tự động hoá quy trình.
Những kiến thức và kỹ thuật được trình bày trong bài viết này sẽ giúp bạn:
- Tiết kiệm thời gian khi làm việc với các bảng dữ liệu lớn.
- Đảm bảo độ chính xác bằng cách sử dụng đúng hàm cho đúng mục đích (ví dụ: SUBTOTAL cho dữ liệu đã lọc).
- Tối ưu hiệu suất của file Excel, tránh lag và lỗi.
- Mở rộng khả năng bằng cách kết hợp các công cụ nâng cao như PivotTable, Power Query, và VBA.
Hãy thực hành ngay trên file Excel của bạn, áp dụng từng bước một, và dần dần bạn sẽ trở thành “bậc thầy” trong việc tính tổng hàng dọc – một kỹ năng nền tảng nhưng vô cùng quan trọng trong mọi công việc liên quan đến dữ liệu. 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ẻ.
