我想要一个迭代第一列和第二列并返回第三列的公式,如果
第 1 列 =“a”和第 2 列 =“d”
公式应返回相应行第三列的值,在这种情况下为 3。否则,应输出 0。
我想要一个迭代第一列和第二列并返回第三列的公式,如果
第 1 列 =“a”和第 2 列 =“d”
公式应返回相应行第三列的值,在这种情况下为 3。否则,应输出 0。
您可以使用以下公式:
=IF(MATCH("foo",A1:A4,0)=MATCH("bar",B1:B4,0),INDEX(C1:C4,MATCH("bar",B1:B4,0)),0)
当然,您可以更改公式中的"foo"
和"bar"
文本以使用另一个单元格引用。无论如何,这至少应该让你开始。
编辑:
如果"bar"
在列中只找到一次B
然后你可以使用
=IF(INDIRECT("A"&MATCH("bar",B1:B4,0))="foo",INDEX(C1:C4,MATCH("bar",B1:B4,0)),0)
最后一件事,对于这两种情况,如果"bar"
从未在 B 列中找到它,#N/A
如果您想更改它会返回,您可以将整个内容包装在一个IFERROR()
语句中并返回您的 0 。
我不认为 Excel 有这个功能。如果您正在查找数字,则可以解决以下问题:
=IF(COUNTIFS($A$1:$A$4,"a",$B$1:$B$4,"d") = 1, SUMIFS($C$1:$C$4,$A$1:$A$4,"a",$B$1:$B$4,"d"), "ERR")
如果只有一个匹配项,并且"ERR"
没有匹配项或匹配项很多,这将产生数字。如果您尝试使用它来查找文本,它将返回 0。
我想,你正在寻找这样的东西,假设第 1 列是 A1,第 2 列是 B1:
=IF(AND(A1="foo",B1="bar"),"bo",0)
如果您有多个需要第 3 列的值,则可以为第二行执行嵌入式 if 语句:
=IF(AND(A1="foo",B1="bar"),"bo",IF(AND(A1="fui",B1 = "bas"),"bis",0))
基本上,在你有 0 的地方,你编写下一个 if 语句,它会一直运行,直到它达到 true 或默认为 0。
那是你需要的吗?
=IF(AND(A1="foo",B1="boo"),"boo",0)