Giúp mình giải thích cơ chế làm việc của hàm SUMPRODUCT

Liên hệ QC

bugatino

Thành viên chính thức
Tham gia
14/7/10
Bài viết
54
Được thích
3
Chào các bạn GPE,

Mình có 1 bảng tính như sau:
2013-05-29 10_14_42-Sumproduct.xlsx - Excel.jpg
Ở ô B2 mình đặt công thức như sau: =SUMPRODUCT(($A$2:$A$9=B$1)*($B$1:$I$1=$A2)) kết quả trả về là 1
Ở ô B3 mình đặt công thức: =SUMPRODUCT(($A$2:$A$9=B$1)*($B$1:$I$1=$A3)) kế quả cũng trả về 1.

Mình có vào Formulas/Evaluate Formula xem cách thực hiện công thức này thì thấy như sau:

Đầu tiên hàm tính $A$2:$A$9=B$1 trả về {True, False, False, False, False, False, False, False, False} => {1, 0, 0, 0, 0, 0, 0, 0, 0}

Tiếp tới là tính $B$1:$I$1=$A3 và trả về {False, True, False, False, False, False, False, False, False} => {0, 1, 0, 0, 0, 0, 0, 0, 0}

tới đây hàm thực hiện phép nhân 2 mảng này với nhau nhưng trả về kết quả như sau:

{0, 1, 0, 0, 0, 0, 0, 0, 0;0, 0, 0, 0, 0, 0, 0, 0, 0;0, 0, 0, 0, 0, 0, 0, 0, 0;0, 0, 0, 0, 0, 0, 0, 0, 0;0, 0, 0, 0, 0, 0, 0, 0, 0;0, 0, 0, 0, 0, 0, 0, 0, 0;0, 0, 0, 0, 0, 0, 0, 0, 0;0, 0, 0, 0, 0, 0, 0, 0, 0}

Sau đó mới tính tổng mảng này => trả về kết quả 1.

Theo mình nghĩ thì hàm sẽ tính tích 2 mảng như sau:
{1, 0, 0, 0, 0, 0, 0, 0, 0}*{0, 1, 0, 0, 0, 0, 0, 0, 0}={0, 0, 0, 0, 0, 0, 0, 0, 0}

=> kết quả của hàm này sẽ là 0.

Các bạn giải thích giùm mình cách tính của hàm SUMPRODUCT trong trường hợp này với.

Cám ơn các bạn!
 

File đính kèm

  • Sumproduct.xlsx
    8.3 KB · Đọc: 12
Lần chỉnh sửa cuối:
Theo mình nghĩ thì hàm sẽ tính tích 2 mảng như sau:
{1, 0, 0, 0, 0, 0, 0, 0, 0}*{0, 1, 0, 0, 0, 0, 0, 0, 0}={0, 0, 0, 0, 0, 0, 0, 0, 0}

=> kết quả của hàm này sẽ là 0.

Các bạn giải thích giùm mình cách tính của hàm SUMPRODUCT trong trường hợp này với.

Cám ơn các bạn!

2 mảng này đâu có cùng chiều đâu mà nhân kiểu đó (1 thằng ngang, 1 thằng dọc cơ mà)
 
Bạn dùng dấu * nghĩa là hợp, lấy tất cả các phần tử

{1, 0, 0, 0, 0, 0, 0, 0, 0}*{0, 1, 0, 0, 0, 0, 0, 0, 0} = {0,1} nên kết quả của SUMPRODUCT sẽ là 1 = 0+1
 
2 mảng này đâu có cùng chiều đâu mà nhân kiểu đó (1 thằng ngang, 1 thằng dọc cơ mà)

Vậy cho em hỏi thêm 1 chút nếu em muốn tô màu ô có thông tin ở cột ngang và cột dọc giống nhau (dựa vào conditional formatting) thì em cần làm như thế nào?

Em đã thử quét chọn vùng từ $B$2:$I$9 và áp dụng công thức =AND(($A$2:$A$9=B$1),($B$1:$I$1=$A2)) nhưng không được.
 
Dùng công thức này cho CF tại ô B2:
=$A2=B$1
 
Web KT
Back
Top Bottom