Trong quá trình làm việc với Excel, việc gặp phải các ô trống (empty cells) là điều không thể tránh khỏi. Những ô trống này có thể gây ra nhiều vấn đề không mong muốn khi thực hiện các phép tính, tạo báo cáo, hoặc phân tích dữ liệu. Đặc biệt, khi bạn muốn tính tổng, trung bình, hoặc áp dụng các công thức thống kê, các ô trống có thể làm sai lệch kết quả hoặc thậm chí gây lỗi. Vì vậy, việc thay thế các ô trống bằng số 0 (replace empty cells with 0) là một thao tác quan trọng mà mọi người dùng Excel nên nắm vững.
Bài viết dưới đây sẽ cung cấp cho bạn một hướng dẫn toàn diện, chi tiết và thực tiễn về cách thay thế các ô trống bằng số 0 trong Excel. Nội dung bao gồm:
- Giới thiệu tổng quan về ô trống và tác động của chúng
- Các phương pháp cơ bản: Sử dụng Find & Replace, Go To Special, và công thức IF.
- Sử dụng tính năng Fill (điền) và hàm IFERROR
- Áp dụng VBA (Macro) để tự động hoá quy trình
- Kỹ thuật nâng cao: Dùng Power Query, Power Pivot và các hàm mảng (array formulas).
- Mẹo tối ưu hoá hiệu suất khi làm việc với dữ liệu lớn
- Lưu ý và cảnh báo khi thay thế ô trống bằng 0
- Các ví dụ thực tế và bài tập thực hành
Có thể bạn quan tâm: Cách Xóa Khoảng Trắng Trong Văn Bản Trên Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
1. Tại Sao Các Ô Trống Lại Gây Rắc Rối?
1.1. Ảnh hưởng tới công thức tính toán
- SUM, AVERAGE, COUNT: Các hàm này thường bỏ qua ô trống, nhưng nếu bạn muốn tính tổng bao gồm cả “không có dữ liệu” thì cần chuyển ô trống thành 0.
- IF, VLOOKUP, INDEX/MATCH: Khi một ô trống được trả về, công thức có thể trả về lỗi #N/A hoặc #VALUE!, gây khó khăn trong việc xử lý dữ liệu.
- PivotTable: Các ô trống có thể xuất hiện dưới dạng “(blank)” trong báo cáo, làm giảm tính trực quan và gây hiểu lầm.
1.2. Ảnh hưởng tới việc trực quan hoá dữ liệu
- Biểu đồ (charts) có thể bỏ qua các điểm dữ liệu nếu ô tương ứng là trống, dẫn tới đường biểu diễn không liền mạch.
- Khi xuất dữ liệu sang các phần mềm khác (SQL, Power BI…), ô trống có thể được hiểu là NULL, tạo ra sự không đồng nhất.
1.3. Lý do muốn thay thế bằng 0
- Đồng nhất dữ liệu: 0 là một giá trị số cụ thể, giúp các công thức và báo cáo luôn có cùng định dạng.
- Ngăn ngừa lỗi: Tránh các lỗi #DIV/0! khi thực hiện phép chia cho ô trống.
- Tiện lợi trong phân tích: Khi áp dụng các hàm thống kê, 0 sẽ được tính vào trung bình, tổng, v.v., giúp phản ánh đúng thực tế “không có giá trị”.
Có thể bạn quan tâm: Cách Xóa Khoảng Trắng Đầu Dòng Trong Excel: Hướng Dẫn Chi Tiết Và Thực Hành
2. Phương Pháp Cơ Bản Để Thay Thế Ô Trống Bằng 0
2.1. Sử Dụng Find & Replace (Tìm và Thay Thế)
Bước 1: Chọn vùng dữ liệu cần thay thế (hoặc nhấn Ctrl + A để chọn toàn bộ sheet).
Bước 2: Nhấn Ctrl + H để mở hộp thoại Find and Replace.
Bước 3: Để trống ô “Find what”.
Bước 4: Nhập 0 vào ô “Replace with”.
Bước 5: Nhấn “Options” → Đảm bảo “Look in” là “Formulas” (nếu muốn thay thế cả trong công thức) và “Match entire cell contents” không được chọn.
Bước 6: Nhấn “Replace All”.
Lưu ý: Phương pháp này chỉ thay thế các ô thực sự trống (empty). Nếu ô chứa công thức trả về
""(chuỗi rỗng), chúng sẽ không được thay thế. Để xử lý trường hợp này, chúng ta cần dùng Go To Special.
2.2. Go To Special → Constants (Hằng Số) và Blanks (Ô Trống)
Bước 1: Chọn vùng dữ liệu hoặc toàn bộ sheet (Ctrl + A).
Bước 2: Nhấn F5 → “Special…”.
Bước 3: Chọn “Blanks” → OK. Excel sẽ tự động chọn tất cả các ô trống trong vùng đã chọn.
Bước 4: Gõ 0 và nhấn Ctrl + Enter. Tất cả các ô trống được chọn sẽ được điền 0 đồng thời.
Mẹo: Nếu muốn thay thế các ô chứa công thức trả về chuỗi rỗng (
""), chúng ta có thể dùng công cụ Find & Replace với tùy chọn “Look in: Formulas” và nhập""vào “Find what”.
2.3. Dùng Công Thức IF để Thay Thế Tạm Thời
Nếu bạn không muốn thay đổi dữ liệu gốc, có thể tạo một cột phụ để hiển thị 0 khi ô gốc trống:
=IF(A2="",0,A2)
- Giải thích: Công thức kiểm tra nếu A2 trống thì trả về 0, ngược lại trả về giá trị gốc của A2.
- Kéo công thức xuống toàn bộ cột để áp dụng cho nhiều ô.
- Khi cần, bạn có thể Copy → Paste Special → Values để ghi đè giá trị thực tế vào cột gốc.
2.4. Sử Dụng Hàm IFERROR Khi Đối Mặt Với Công Thức
Khi các công thức trả về lỗi do ô trống (ví dụ: =A2/B2 khi B2 trống), bạn có thể bao bọc bằng IFERROR:
=IFERROR(A2/B2,0)
Điều này không thay thế ô trống thành 0, nhưng giúp ngăn lỗi và trả về 0 trong các trường hợp tính toán không hợp lệ.
Có thể bạn quan tâm: Cách Gỡ Khóa Bảo Vệ Excel Không Cần Mật Khẩu: Hướng Dẫn Chi Tiết Và An Toàn
3. Tự Động Hóa Với Power Query (Get & Transform)
Power Query là công cụ mạnh mẽ trong Excel (từ Excel 2026 trở lên) cho phép xử lý dữ liệu trước khi tải vào sheet. Đối với việc thay thế ô trống bằng 0, Power Query cung cấp giao diện trực quan và khả năng áp dụng cho dữ liệu lớn.
3.1. Nhập Dữ Liệu Vào Power Query
- Chọn bảng dữ liệu → Tab Data → From Table/Range.
- Power Query Editor sẽ mở ra.
3.2. Thay Thế Các Giá Trị Null (Ô Trống) Bằng 0
- Chọn cột cần thay thế.
- Click chuột phải → Replace Values.
- Trong ô “Value To Find”, để trống (hoặc nhập
nulltùy phiên bản). - Trong ô “Replace With”, nhập
0. - Nhấn OK.
Nếu muốn áp dụng cho tất cả các cột, bạn có thể:
= Table.ReplaceValue(Source,null,0,Replacer.ReplaceValue,Table.ColumnNames(Source))
3.3. Áp Dụng và Tải Dữ Liệu Về Sheet

Có thể bạn quan tâm: Cách Xóa Thời Gian Khỏi Ngày Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
- Nhấn Close & Load để tải dữ liệu đã chuyển đổi trở lại Excel.
- Bây giờ, mọi ô trống đã được chuyển thành 0 trong bảng mới.
Ưu điểm: Power Query giữ nguyên dữ liệu gốc và cho phép cập nhật tự động khi nguồn dữ liệu thay đổi.
4. Sử Dụng VBA (Macro) Để Thay Thế Ô Trống Bằng 0
Khi làm việc với các file Excel có hàng nghìn, hàng triệu ô, việc thực hiện thủ công có thể tốn thời gian. VBA cho phép bạn tự động hoá toàn bộ quy trình chỉ với một cú nhấp chuột.
4.1. Mã VBA Cơ Bản
Sub ReplaceBlanksWithZero() Dim ws As Worksheet Dim rng As Range ' Áp dụng cho sheet hiện tại Set ws = ActiveSheet ' Xác định vùng dữ liệu (có dữ liệu) On Error Resume Next Set rng = ws.UsedRange.SpecialCells(xlCellTypeBlanks) On Error GoTo 0 If Not rng Is Nothing Then rng.Value = 0 MsgBox "Đã thay thế " & rng.Count & " ô trống bằng 0.", vbInformation Else MsgBox "Không tìm thấy ô trống trong sheet.", vbExclamation End If
End Sub
Giải thích:
– UsedRange.SpecialCells(xlCellTypeBlanks) chọn tất cả ô trống trong vùng đã sử dụng.
– rng.Value = 0 ghi 0 vào các ô này.
– Thông báo số lượng ô đã thay thế.
4.2. Mở Rộng: Thay Thế Ô Trống Trong Tất Cả Các Sheet
Sub ReplaceBlanksAllSheets() Dim ws As Worksheet Dim rng As Range Dim totalCount As Long totalCount = 0 For Each ws In ThisWorkbook.Worksheets On Error Resume Next Set rng = ws.UsedRange.SpecialCells(xlCellTypeBlanks) On Error GoTo 0 If Not rng Is Nothing Then rng.Value = 0 totalCount = totalCount + rng.Count End If Next ws MsgBox "Đã thay thế tổng cộng " & totalCount & " ô trống bằng 0 trong toàn bộ workbook.", vbInformation
End Sub
4.3. Khi Nào Nên Dùng VBA?
- Dữ liệu lớn: Hàng chục nghìn ô, VBA nhanh hơn thao tác thủ công.
- Nhiều sheet: Thay thế đồng thời trên nhiều sheet.
- Công việc định kỳ: Bạn có thể gán macro vào nút hoặc chạy tự động khi mở file.
Cảnh báo: Trước khi chạy macro, luôn sao lưu file để tránh mất dữ liệu không mong muốn.
5. Kỹ Thuật Nâng Cao: Power Pivot, DAX và Hàm Mảng
5.1. Power Pivot & DAX
Khi làm việc với mô hình dữ liệu trong Power Pivot, các ô trống thường được biểu diễn là BLANK() trong DAX. Để thay thế chúng bằng 0 trong các phép tính, bạn có thể dùng hàm COALESCE hoặc IF:
Total Sales = COALESCE(SUM(SalesAmount),0)
Hoặc:
Adjusted Quantity = IF(ISBLANK(InventoryQty),0,InventoryQty)
5.2. Hàm Mảng (Array Formula) Trong Excel 365
Với Excel 365, bạn có thể dùng hàm IF kết hợp ISBLANK trong công thức mảng:
=IF(ISBLANK(A2:A1000),0,A2:A1000)
Sau khi nhập, nhấn Enter (không cần Ctrl+Shift+Enter nhờ Dynamic Arrays). Công thức sẽ trả về một mảng mới, thay thế các ô trống bằng 0 mà không thay đổi dữ liệu gốc.
6. Mẹo Tối Ưu Hoá Khi Xử Lý Dữ Liệu Lớn
- Tắt tính toán tự động (
Formulas → Calculation Options → Manual) khi thực hiện thay thế trên danh sách lớn, sau đó bật lại và nhấnF9để tính lại. - Sử dụng Power Query thay vì công thức, vì nó xử lý dữ liệu trong bộ nhớ và nhanh hơn.
- Giới hạn phạm vi: Thay vì
UsedRange, hãy chỉ định vùng thực sự cần thay thế (ví dụ:Range("A1:D5000")) để giảm tải. - Xóa định dạng không cần thiết: Đôi khi ô trống có định dạng màu nền, khiến chúng không được nhận diện là “blank”. Sử dụng
Clear Formatstrước khi thay thế.
7. Lưu Ý và Cảnh Báo Khi Thay Thế Ô Trống Bằng 0
| Trường hợp | Tác động | Giải pháp |
|---|---|---|
Ô chứa công thức trả về "" | Không được nhận diện là blank khi dùng Go To Special | Dùng Find & Replace với “Look in: Formulas” và tìm "" |
Ô trống là kết quả của hàm VLOOKUP trả về #N/A | Khi thay 0 có thể làm sai lệch dữ liệu | Dùng IFERROR(...,0) hoặc IF(ISNA(...),0,...) |
| Dữ liệu nhập từ nguồn ngoài (SQL, CSV) có NULL | Excel hiển thị là trống, nhưng khi xuất lại có thể mất thông tin | Xác định nguồn và quyết định có thực sự muốn chuyển NULL thành 0 hay không |
| Ô trống trong cột ngày tháng | Thay 0 sẽ biến thành ngày 0 (30/12/1899) gây lỗi | Thay bằng ngày mặc định (ví dụ: 1/1/1900) hoặc giữ trống nếu không cần tính toán |
| Sử dụng Macro trên workbook có bảo vệ | Macro không thể thay đổi ô được bảo vệ | Mở bảo vệ sheet (Unprotect) trước khi chạy macro, sau đó Protect lại |
8. Ví Dụ Thực Tế Và Bài Tập Thực Hành
8.1. Ví dụ 1: Báo cáo doanh thu hàng tháng
Bạn có bảng doanh thu với các tháng có thể không có doanh số (ô trống). Để tính tổng doanh thu cả năm, cần thay thế ô trống bằng 0.
Bước thực hiện:
1. Chọn cột DoanhThu.
2. Ctrl + G → Special… → Blanks.
3. Gõ 0 → Ctrl + Enter.
4. Sử dụng =SUM(C2:C13) để lấy tổng.
8.2. Ví dụ 2: Tính tỷ lệ phần trăm
Cột Số Lượng Bán có ô trống, cột Số Lượng Nhập. Bạn muốn tính tỷ lệ % bán / nhập.
=IF(B2=0,0,A2/B2)
Nếu B2 (số lượng nhập) trống, công thức sẽ trả về 0 thay vì lỗi #DIV/0!.
8.3. Bài tập
- Bài 1: Cho bảng 5000 hàng, cột
Giácó nhiều ô trống. Viết macro VBA để thay thế tất cả ô trống trong cột này bằng 0, đồng thời ghi lại số lượng ô đã thay đổi vào một ôE1. - Bài 2: Sử dụng Power Query để nhập một file CSV có 30.000 dòng, trong đó cột
Số Lượngcó giá trị NULL. Thay thế NULL bằng 0 và tải dữ liệu vào một bảng mới. - Bài 3: Trong Power Pivot, tạo một measure tính tổng doanh thu, nhưng nếu giá trị là BLANK() thì trả về 0. Kiểm tra kết quả trên một bảng pivot.
Kết Luận
Thay thế các ô trống bằng số 0 trong Excel không chỉ là một thao tác đơn giản mà còn là một phần quan trọng của quá trình làm sạch dữ liệu (data cleaning). Từ các phương pháp nhanh chóng như Find & Replace và Go To Special, đến các giải pháp mạnh mẽ hơn như Power Query, VBA, và DAX, bạn có thể lựa chọn cách phù hợp nhất với quy mô và tính chất công việc.
Hãy nhớ rằng:
- Hiểu rõ nguồn dữ liệu trước khi thay đổi, tránh việc biến mất thông tin quan trọng.
- Lưu bản sao của file gốc để có thể phục hồi nếu cần.
- Kiểm tra lại sau khi thực hiện để đảm bảo các công thức, báo cáo và biểu đồ vẫn hoạt động chính xác.
Với những kiến thức và công cụ đã được trình bày ở trên, bạn đã sẵn sàng đối mặt với bất kỳ tình huống nào liên quan đến ô trống trong Excel và biến chúng thành 0 một cách nhanh chóng, an toàn và hiệu quả. Chúc bạn thành công trong công việc và luôn có những bảng tính sạch sẽ, chính xá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ẻ.
