Menu

App script quản lý rủi ro cho cá nhân & doanh nghiệp với báo cáo chuẩn định dạng biểu đồ

Khắc phục lỗi #DIV/0! khi chia cho 0 trong Excel

Hồ Kiệt Ly 10/03/2026 01:29 578 lượt xem 3 trả lời

Chào các bạn trong diễn đàn,

Mình thường xuyên làm việc với Excel và hôm nay muốn chia sẻ một lỗi khá phổ biến mà nhiều người hay gặp, đó là lỗi #DIV/0!. Lỗi này xảy ra khi bạn cố gắng chia một số cho 0 hoặc một ô trống.

Ví dụ đơn giản:

=A1/B1

Nếu ô B1 là 0 hoặc trống, công thức trên sẽ trả về #DIV/0!.

Vậy làm sao để xử lý lỗi này một cách chuyên nghiệp?

Có hai cách chính mà mình hay dùng:

  • Sử dụng hàm IFERROR: Đây là cách đơn giản và hiệu quả nhất. Hàm IFERROR cho phép bạn chỉ định giá trị trả về nếu công thức bị lỗi.
=IFERROR(A1/B1, "Không chia được")

Trong ví dụ này, nếu phép chia A1/B1 gây ra lỗi (bao gồm cả #DIV/0!), công thức sẽ trả về chuỗi "Không chia được". Bạn có thể thay "Không chia được" bằng 0, một chuỗi trống "", hoặc bất kỳ giá trị nào bạn muốn.

  • Sử dụng kết hợp IF và ISERROR (hoặc COUNT): Cách này hơi dài hơn nhưng cũng rất hữu ích, đặc biệt khi bạn muốn kiểm tra cụ thể điều kiện chia cho 0.
=IF(B1=0, "Không chia được", A1/B1)

Hoặc nếu bạn muốn kiểm tra cả ô trống:

=IF(OR(B1=0, ISBLANK(B1)), "Không chia được", A1/B1)

Cách thứ hai này cho phép bạn kiểm soát rõ ràng hơn điều kiện gây lỗi. Tuy nhiên, IFERROR thường được ưu tiên vì tính ngắn gọn và bao quát.

Hy vọng chia sẻ này giúp ích cho mọi người trong quá trình làm việc với Excel. Nếu có cách nào hay hơn, mọi người cùng thảo luận nhé!

4

Rất hay, cảm ơn bạn đã chia sẻ về lỗi #DIV/0! này. Đúng là nó xuất hiện khá thường xuyên.

Ngoài cách dùng IFERRORIF mà bạn đã nêu, mình còn hay dùng một cách nữa là kết hợp SUMPRODUCT với việc kiểm tra điều kiện. Ví dụ, nếu bạn muốn tính trung bình nhưng có thể bị chia cho 0, bạn có thể viết:

=SUMPRODUCT(A1:A10)/MAX(1,SUMPRODUCT(--(B1:B100)))

Cách này hơi phức tạp hơn một chút nhưng đôi khi lại rất hiệu quả khi xử lý nhiều điều kiện.

Bạn đã bao giờ thử cách này chưa?

4

Chào bạn, cảm ơn bạn đã chia sẻ kinh nghiệm xử lý lỗi #DIV/0! rất hữu ích.

Mình cũng thường dùng IFERROR để xử lý lỗi này, nó thực sự tiện lợi. Tuy nhiên, đôi khi mình cũng thích dùng kết hợp IF với việc kiểm tra xem ô chia có bằng 0 hay không. Ví dụ: =IF(B1=0, "", A1/B1). Cách này giúp mình linh hoạt hơn trong việc trả về giá trị mong muốn khi xảy ra lỗi.

Bạn có bao giờ gặp tình huống cần trả về một giá trị khác không phải chuỗi trống khi chia cho 0 không? Liệu IFERROR có đáp ứng được không?

3

Mình thấy bạn đã chia sẻ hai cách xử lý lỗi #DIV/0! rất hay và phổ biến.

Cá nhân mình thì hay dùng IFERROR nhiều hơn vì nó gọn gàng và dễ đọc. Tuy nhiên, cách bạn dùng IF(B1=0, "", A1/B1) cũng rất linh hoạt, đặc biệt là khi muốn trả về một giá trị cụ thể khác ngoài chuỗi trống.

Về câu hỏi của bạn, IFERROR hoàn toàn có thể đáp ứng được việc trả về giá trị khác không phải chuỗi trống khi chia cho 0. Bạn chỉ cần thay "" bằng giá trị mong muốn là được. Ví dụ: =IFERROR(A1/B1, "Không chia được") hoặc =IFERROR(A1/B1, 0) tùy theo yêu cầu.

Cảm ơn bạn đã mở ra một chủ đề thảo luận rất thiết thực!

1

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký