如果列A是'X'或'Y'而列B是'Z',如何做excel公式,从列C中求和值?

时间:2017-03-29 02:42:23

标签: excel excel-formula

我有一个电子表格,我需要从中选择一个文本列中的某些特定值,但仅当其他列与年份匹配时才会显示。

我尝试使用SUM关注IF,但我认为文字列中的OR部分失败了......

=SUM(IF(B:B="*Nuoma*",B:B="*(Nuomininko)*",C:C=2016,D:D))

我需要的是,如果B列中的值包含Nuoma OR (Nuomininko)并且C列是2016,那么SUM列D ......

2 个答案:

答案 0 :(得分:2)

尝试,

=SUM(SUMIFS(D:D, B:B, {"*Nuoma*","*(Nuomininko)*"}, C:C, 2016))

{"*Nuoma*","*(Nuomininko)*"} Nuoma 上的通配符匹配或包含(Nuomininko)的通配符匹配提供OR。您必须将SUMIFS包装在SUM中,但不需要CSE。

enter image description here

答案 1 :(得分:0)

这是一个建议,基于这样一个事实:在你的例子中,两个字符串'Nuoma'和'Nuominiko'包含相同的字符串'Nuom'。它使用SUMPRODUCT和SEARCH(作为通配符的替代)以及字符串匹配的帮助列。

屏幕截图中的

Cell D7包含以下公式: =IFERROR(SEARCH("Nuom",B7),0)

E15中的总和由=SUMPRODUCT(E6:E13,--(C6:C13=2016),--(D6:D13=1))完成。在我的例子中,这评估为单元格E10和E14的总和:4 + 2 = 6。

如果您希望避免使用帮助列并使用数组公式,那么这个结果会产生相同的结果而不涉及D列(不要忘记按Ctrl + Shift + Enter键):
{=SUMPRODUCT(E7:E14,--(C7:C14=2016),IFERROR(SEARCH("Nuom",B7:B14),0))}

我认为将此扩展到更复杂的情况会相对简单。

SEARCH instead of wildcards with SUMPRODUCT