VLOOKUP有两个标准?

时间:2012-05-14 12:36:10

标签: excel excel-formula

是否存在从匹配两个或多个条件的第一行返回值的公式?例如,“从第一行返回列C,其中列A = x AND列B = y”。我想在不连接A列和B列的情况下这样做。

感谢。

6 个答案:

答案 0 :(得分:5)

True = 1,False = 0

D1返回0,因为0 * 1 * 8 = 0

D2返回9,因为1 * 1 * 9 = 9

enter image description here

这可以让你改变标准: enter image description here

答案 1 :(得分:5)

我使用INDEX / MATCH。例如:

我有一个数据表,想要返回C列中的值,其中A列中的值为“c”,B列中的值为“h”。

sample layout

我会使用以下数组公式:

=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那样返回第一个匹配的东西。试试这个:

Multiple Criteria INDEX MATCH

为方便起见,G2中的公式如下 - 需要数组输入(Ctrl+Shift+Enter

[编辑:我在这里更新了公式,但没有在屏幕截图中更新] =INDEX($C$1:$C$6,MATCH(E2&"|"&F2,$A$1:$A$6&"|"&$B$1:$B$6,0))

有两点需要注意:

    如果结果类型不是数字,则
  1. SUMPRODUCT将无效
  2. 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的错误,因此我将其修复。