我有两个excel表格,我需要匹配三个值才能返回第四个值。类似的列是月,代理和子域。第四列称为差异。
答案 0 :(得分:8)
Concatenate可以正常工作,但是如果你不想要一个帮助列,那么SUMPRODUCT
就可以了。
示例:
=SUMPRODUCT(--(A2:A12="d"),--(B2:B12="S"),--(C2:C12="Apr"),D2:D12)
将搜索范围A2:A12表示“d”,B2:B12表示“S”,C2:C12表示“4月”,并返回值fom D2:D12,其对应于所有3都为真的位置。如果多行匹配,则会在D2:D12中为所有匹配的行添加值。
--
用于将True / False结果更改为0和1以用于乘法
SUMPRODUCT
答案 1 :(得分:1)
虽然我相信@MakeCents关于如何做到这一点的评论/建议是因为它是最简单的,但你可以使用{{1}以不同的方式实现这一点(尽管处理器密集程度更高) }和Index()
函数和数组公式。
例如,假设您要查找的3列数据是A-C列,并且您希望从Sheet1中的D列返回匹配值
现在,你想要匹配的3个值在单元格A1,B1和& Sheet2的C1,您可以使用以下公式:
Match()
按<{1}} + =INDEX(Sheet1!D:D,MATCH(1,(Sheet1!A:A=A1)*(Sheet1!B:B=B1)*(Sheet1!C:C=C1),0))
+ Ctrl
输入其作为阵列公式
希望这有帮助!
答案 2 :(得分:1)
您正在寻找具有多个条件的查找。
最强大的选项之一是
=INDEX(D:D,SUMPRODUCT(--(A:A="d"),--(B:B="S"),--(C:C="Apr"),ROW(D:D)),0)
无需输入数组公式。 取自[1] (blogs.office.com)。
另请参阅this very complete answer,其中总结了使用多个条件执行查找的此选项和其他选项。
PS1:请注意,我根据this使用了对完整列的引用。
PS2:对于输出列不包含数字的情况,可以将此视为the solution by Sean的增强。
参考
[1]这篇文章是由JP Pinto撰写的,他是VLOOKUP周期间关于VLOOKUP的最佳文章的大白鲨奖得主。
答案 3 :(得分:0)
试试这个
=IF(A4=Data!$A$4:$A$741,IF(B4=Data!$B$4:$B$741,"Hai"))