Menu

Mẹo gỡ lỗi #VALUE! khi dùng hàm SUM/SUMPRODUCT với ô trống

Diệp Tài Hiệp 12/03/2026 21:17 577 lượt xem 2 trả lời

Chào mọi người,

Hôm nay mình muốn chia sẻ một tình huống khá quen thuộc khi làm việc với Excel, đó là lỗi #VALUE! xuất hiện khi sử dụng hàm SUM hoặc SUMPRODUCT mà trong vùng dữ liệu lại có các ô trống.

Thông thường, khi ta dùng =SUM(A1:A10) mà trong vùng này có ô trống, Excel sẽ tự động hiểu ô trống đó là 0 và tính toán bình thường. Tuy nhiên, khi dùng SUMPRODUCT hoặc một số hàm mảng khác, hoặc khi các ô trống này đi kèm với một số lỗi khác (ví dụ #N/A, #DIV/0!), thì #VALUE! có thể xuất hiện.

Nguyên nhân:

  • Hàm SUMPRODUCT xử lý từng phần tử của mảng. Nếu một ô trống được coi là một giá trị không hợp lệ (không phải số), nó sẽ gây ra lỗi #VALUE!.
  • Các ô trống có thể gây ra lỗi nếu chúng nằm trong một phép tính phức tạp hơn hoặc khi kết hợp với các hàm khác.

Cách khắc phục đơn giản:

Để tránh lỗi này, chúng ta có thể sử dụng hàm IFERROR hoặc kết hợp SUMPRODUCT với N() hoặc -- để ép kiểu dữ liệu.

1. Sử dụng IFERROR:

Nếu bạn đang dùng SUMPRODUCT và muốn bỏ qua các ô trống, bạn có thể làm như sau:

=SUMPRODUCT(--(IFERROR(A1:A10,0)))

Hoặc đơn giản hơn nếu bạn chỉ muốn tổng các số và coi ô trống là 0:

=SUM(IFERROR(A1:A10,0))

2. Sử dụng toán tử ép kiểu (--):

Toán tử -- sẽ chuyển đổi các giá trị logic (TRUE/FALSE) hoặc văn bản thành số. Nó cũng có thể giúp chuyển đổi ô trống thành 0 trong một số trường hợp khi kết hợp với các hàm mảng.

=SUMPRODUCT(--(A1:A10))

Cách này thường hiệu quả nếu bạn chắc chắn các ô khác không chứa văn bản gây lỗi. Tuy nhiên, IFERROR vẫn là lựa chọn an toàn và rõ ràng hơn.

Hy vọng mẹo nhỏ này giúp ích cho mọi người khi xử lý các file Excel có nhiều ô trống!

3
Mình gặp vấn đề tương tự với SUMPRODUCT khi có cả ô trống và lỗi khác trong mảng. Cách bạn đề cập để xử lý ô trống là rất hay. Ngoài ra, để tránh lỗi #VALUE! do các ô lỗi khác (như #N/A, #DIV/0!), mình thường dùng thêm hàm IFERROR để "dọn dẹp" vùng dữ liệu trước khi đưa vào SUMPRODUCT. Ví dụ: =SUMPRODUCT(IFERROR(VUNG_DU_LIEU,0)). Như vậy, tất cả các ô lỗi sẽ được thay thế bằng 0, giúp hàm tính toán chính xác hơn.
2

Cảm ơn bạn đã chia sẻ mẹo xử lý lỗi #VALUE! với SUM/SUMPRODUCT khi có ô trống. Tình huống này đúng là rất dễ gặp phải!

Mình cũng từng gặp trường hợp tương tự, đặc biệt khi các ô trống đó lại nằm chung với các ô chứa văn bản hoặc các loại lỗi khác. Cách bạn đề cập để chuyển ô trống thành 0 rất hữu ích.

Ngoài ra, nếu trong vùng dữ liệu còn có các ô chứa văn bản không phải là số, thì SUMPRODUCT cũng sẽ báo lỗi #VALUE!. Bạn có cách nào xử lý trường hợp này không? Hay là mình phải "dọn dẹp" dữ liệu trước khi đưa vào hàm?

4

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

Đăng nhập Đăng ký