Excel,如果行值与另一个 sheet 上的 vlookup 值匹配则求和

Excel, sum if a row value matches a vlookup value on another sheet

是否可以根据另一个 sheet 检查的标准对一列中的所有值求和?

我有两个 sheet,一个有值,一个有制造商。我想检查制造商在另一个 sheet 上是否有除 "YES" 以外的任何值,如果不等于 "YES",则求和。最终结果是在 Sheet 上没有 "YES" 值的所有制造商的总数 2.

在下面的示例中,我试图对除 Manuf B 之外的所有内容求和,总计 1,132 美元。

到目前为止,我正在研究的公式(非功能性)是:

=sumif(vlookup(C5:C12,'SHEET 2'!E5:F8,2,false),not("YES"),B5:B12)

作为 CSE 的数组公式,

=SUMPRODUCT(B5:B12,--ISNUMBER(SEARCH(C5:C12, TEXTJOIN(",",TRUE,IF(F5:F8<>"yes",E5:E8)))))

... 或(可能)更传统的数组公式(使用 CSE),

=SUM(SUMIFS(B5:B12, C5:C12, TRANSPOSE(INDEX(E5:E8&IF(F5:F8="yes", CHAR(215), TEXT(,)), , ))))

后一个数组公式的略微简化版本,

=SUM(SUMIFS(B5:B12,C5:C12,INDEX(IF(F5:F8="yes",CHAR(215),E5:E8),,)))

我觉得这样比较干净...

=SUM(SUMIF(C5:C12,IF(Sheet2!F5:F8<>"YES",Sheet2!E5:E8,FALSE),B5:B12))

它仍然是一个数组公式,因此您必须在添加公式时按 Ctrl + Shift + Enter 而不是只按 Enter