全部練習題 / 數學

有幾家廠商對不上(用 SUMPRODUCT 比較兩欄)

困難 數學
題目說明
提示 0/4
官方解法 2
–
測試案例
1
2
3
重設
提交
fx
A
B
C
D
E
F
G
1
2
3
4
5
6
7
8
9
10
正在載入互動式試算表...
正在準備儲存格資料與公式求解引擎
○ 就緒 請在反白的目標儲存格輸入公式,然後點「提交」。

題目

題目說明

月結前先數出「已付 != 已開立」的廠商:付款金額在 C2:C6、開立金額在 B2:B6。把數量填進 Mismatched 儲存格 E2。

必須用一條公式逐列比較兩欄——COUNTIFS 沒辦法拿一欄去比另一欄。

題目資料

用表格檢視整份資料(可選取、可複製)
這道題的資料表
ABCE
1VendorInvoicedPaidMismatched
2Acme50005000
3Bolt32003000
4Cobalt18001800
5Dana900950
6Eli4000

觀念解析

SUMPRODUCT(--(B2:B6<>C2:C6)) 逐列比較兩欄,把每一處不同變成 1,再加總。這正是 COUNTIFS 做不到的事:它的條件只能是常數,說不出「B 欄不等於 C 欄」。已付 0 也會算成不符,這是刻意的——沒人付錢就是最嚴重的不符。

解題思路

答案寫在 E2。送出時我們會換 3 組輸入重跑你的公式,寫死數字一定過不了 —— 公式必須跟著儲存格走。

  1. 目標儲存格是 E2
  2. 要逐列比較兩欄,不是整欄對整欄
  3. <> 會讓不同的列變成 TRUE
  4. 公式形狀:=SUMPRODUCT(--(? <> ?))

官方解法

展開 2 種解法(建議先自己試一次)

解法 1:直接數不同的列

=SUMPRODUCT(--($B$2:$B$6 <> $C$2:$C$6))

Bolt(3200 對 3000)、Dana(900 對 950)、Eli(400 對 0)三列不同,答案是 3。Acme 與 Cobalt 相符,貢獻 0。

解法 2:總列數減去相符的列

=ROWS($B$2:$B$6) - SUMPRODUCT(--($B$2:$B$6 = $C$2:$C$6))

五列減掉相符的兩列,剩下不相符的三列。結果相同,而且當你同時要報「相符筆數」時更好核對。

相關練習

常見問題

怎麼在 Excel 裡逐列比較兩欄?

=SUMPRODUCT(--(A2:A10<>B2:B10)) 會數出不同的列數。COUNTIFS 做不到,因為它的條件只能是常數。

付款是空白或 0 算不算不符?

算。它不等於開立金額。月結時這通常正是你想抓的:完全沒付是最嚴重的不符。