是否存在从匹配两个或多个条件的第一行返回值的公式?例如,“从第一行返回列C,其中列A = x AND列B = y”。我想在不连接A列和B列的情况下这样做。
感谢。
答案 0 :(得分:5)
True = 1,False = 0
D1返回0,因为0 * 1 * 8 = 0
D2返回9,因为1 * 1 * 9 = 9
这可以让你改变标准:
答案 1 :(得分:5)
我使用INDEX / MATCH。例如:
我有一个数据表,想要返回C列中的值,其中A列中的值为“c”,B列中的值为“h”。
我会使用以下数组公式:
=INDEX($C$1:$C$5,MATCH(1,(($A$1:$A$5="c")*($B$1:$B$5="h")),0))
按 Ctrl + Shift + Enter
提交公式输入公式后,您可以使用Excel的公式审核工具逐步完成评估,以查看其计算方式。
答案 2 :(得分:3)
SUMPRODUCT
肯定有价值。但是,当我阅读你的问题的方式时,你需要像VLOOKUP
那样返回第一个匹配的东西。试试这个:
为方便起见,G2
中的公式如下 - 需要数组输入(Ctrl+Shift+Enter
)
[编辑:我在这里更新了公式,但没有在屏幕截图中更新]
=INDEX($C$1:$C$6,MATCH(E2&"|"&F2,$A$1:$A$6&"|"&$B$1:$B$6,0))
有两点需要注意:
SUMPRODUCT
将无效
SUMPRODUCT
将返回符合条件的SUM
个结果,而不是第一个匹配项(VLOOKUP
确实如此)答案 3 :(得分:0)
显然你可以使用SUMPRODUCT function。
答案 4 :(得分:0)
实际上,我认为他所要求的是excel中典型的多结果显示选项。可以using Small, and row function in arrays完成。
显示符合不同条件的所有结果
答案 5 :(得分:0)
以下是一个答案,显示了如何使用SUMPRODUCT和表头查找来执行此操作。这样做的主要优点是:它可以与任何值(数字或其他值)一起使用。
因此,我们在名为MyTable的表上具有标头H1,H2和H3。假设我们将其输入第1行,可能在另一张纸上。我们想在该工作表上分别将H1,H2匹配到x,y,同时在H3中返回匹配值。那么公式如下:
=INDEX(MyTable[H3], ROUND(SUMPRODUCT(MATCH(TRUE, (MyTable[H1] & MyTable[H2]) = ($x1 & $y1),0)),0),1)
它有什么作用? sum-product可确保将所有内容都视为数组。因此,您可以将整个表列连接在一起,以创建一个由动态计算的串联值数组。然后,您可以将它们与x和y中的现有值进行比较-神奇地将表中的串联数组与x和y的单个串联进行比较。这为您提供了一个真假值数组。将其匹配为true将产生查找的第一个匹配项。然后我们要做的就是返回并在原始表中对其进行索引。
舍入只是为了确保Index函数返回一个整数。我得到#N / A值,直到四舍五入为止。
通过评估程序运行此命令以查看正在发生的事情可能更具指导意义。
可以很容易地将其修改为与非表一起使用-只需将表引用替换为原始范围即可。这些表比较清楚,因此请尽可能使用它们。我在这里找到了原始来源:http://dailydoseofexcel.com/archives/2009/04/21/vlookup-on-two-columns/。但是存在一个将值路由到INT的错误,因此我将其修复。