是否有一个公式可以从匹配两个或多个条件的第一行返回一个值?例如,“从第一行返回 C 列,其中列 A = x AND 列 B = y”。我想在不连接 A 列和 B 列的情况下做到这一点。
谢谢。
是否有一个公式可以从匹配两个或多个条件的第一行返回一个值?例如,“从第一行返回 C 列,其中列 A = x AND 列 B = y”。我想在不连接 A 列和 B 列的情况下做到这一点。
谢谢。
真 = 1,假 = 0
D1 返回 0,因为 0 * 1 * 8 = 0
D2 返回 9 因为 1 * 1 * 9= 9
这应该让您更改标准:
我为此使用 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 的公式审核工具逐步进行评估,看看它是如何计算的。
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
那样)实际上,我认为他要问的是 excel 中典型的多结果显示选项。可以使用数组中的 Small 和 row 函数来完成。
这将显示与不同条件匹配的所有结果
显然你可以使用SUMPRODUCT 函数。
这是一个答案,显示了如何使用 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 的路由值存在一个错误,所以我修复了它。