Menu

Mẹo dùng SUMPRODUCT để tính tổng có điều kiện với chuỗi ký tự

Tưởng Song Phong 07/06/2026 10:36 197 lượt xem 2 trả lời

Chào các bạn, hôm nay mình muốn chia sẻ một mẹo nhỏ mà mình hay dùng để xử lý việc tính tổng có điều kiện khi dữ liệu là chuỗi ký tự, thay vì chỉ dùng số. Nhiều lúc chúng ta cần đếm hoặc tính tổng dựa trên một loại sản phẩm, tên khách hàng, hoặc một mã nào đó mà không phải là số thuần túy.

Thông thường, khi nói đến tính tổng có điều kiện, mọi người hay nghĩ đến SUMIFS. Tuy nhiên, SUMIFS hoạt động tốt nhất với các điều kiện số. Nếu bạn thử dùng SUMIFS với điều kiện là chuỗi ký tự, nó sẽ trả về 0 hoặc lỗi.

Trong trường hợp này, hàm SUMPRODUCT thực sự phát huy tác dụng. Nó cho phép chúng ta thực hiện các phép tính trên mảng và cộng kết quả lại. Để tính tổng có điều kiện dựa trên chuỗi, chúng ta có thể kết hợp SUMPRODUCT với phép so sánh chuỗi.

Ví dụ, giả sử bạn có một bảng dữ liệu với cột 'Sản phẩm' (cột A) và cột 'Doanh số' (cột B). Bạn muốn tính tổng doanh số cho sản phẩm 'Sữa chua':

=SUMPRODUCT((A1:A10="Sữa chua")*(B1:B10))

Trong công thức này:

  • (A1:A10="Sữa chua") sẽ tạo ra một mảng các giá trị TRUE/FALSE. TRUE nếu ô trong A1:A10 là 'Sữa chua', FALSE nếu không phải.
  • Khi nhân với một mảng số (như B1:B10), Excel sẽ tự động chuyển TRUE thành 1 và FALSE thành 0.
  • Do đó, phép nhân này sẽ chỉ giữ lại các giá trị doanh số tương ứng với 'Sữa chua' và loại bỏ các giá trị khác.
  • Cuối cùng, SUMPRODUCT sẽ cộng các giá trị còn lại.

Cách này rất hữu ích khi bạn cần tổng hợp dữ liệu dựa trên các tiêu chí dạng văn bản mà không muốn phải thêm cột phụ hay làm các thao tác phức tạp khác. Chúc các bạn áp dụng thành công!

4

Chào bạn, cảm ơn bạn đã chia sẻ mẹo rất hay về SUMPRODUCT! Đúng là SUMIFS đôi khi hơi "kén chọn" với dữ liệu chuỗi ký tự thật.

Mình cũng hay dùng SUMPRODUCT cho trường hợp này, nó linh hoạt hơn hẳn. Tuy nhiên, có một lần mình gặp khó khăn khi kết hợp nhiều chuỗi ký tự làm điều kiện. Bạn có kinh nghiệm gì với trường hợp này không? Chia sẻ thêm cho mọi người học hỏi với nhé!

3

Cảm ơn bạn đã đặt câu hỏi rất hay! Trường hợp kết hợp nhiều chuỗi ký tự làm điều kiện với SUMPRODUCT đúng là có thể hơi phức tạp.

Cách mình thường làm là sử dụng toán tử nhân để kết hợp các mảng điều kiện chuỗi, giống như khi bạn dùng AND trong logic vậy. Ví dụ, nếu muốn tính tổng dựa trên điều kiện chuỗi ở cột A là "A" VÀ chuỗi ở cột B là "B", bạn có thể viết:

=SUMPRODUCT((A1:A10="A")(B1:B10="B")*C1:C10)

Phần (A1:A10="A")(B1:B10="B") sẽ trả về mảng các giá trị TRUE/FALSE. Khi nhân chúng với nhau, TRUE sẽ thành 1 và FALSE sẽ thành 0. Chỉ những dòng thỏa mãn cả hai điều kiện mới có kết quả là 1, sau đó nhân với giá trị ở cột C để tính tổng.

Không biết bạn đã thử cách này chưa, hoặc có gặp tình huống nào khó hơn không? Chia sẻ thêm để chúng ta cùng thảo luận nhé!

2

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

Đăng nhập Đăng ký