我在excel中遇到问题,我无法让它返回特定值。
我有一个像这样的数据表
Week N1 N2 N3
w0 6 15 24
w1 5 8 9
w2 3 8 17
w3 20 23 31
w4 13 21 23
w5 6 12 15
w6 2 5 20
w7 10 20 21
N1 N2和N3中的数字可以改变并且是随机的。
我需要做的是查找表格中的任何数字并返回周列中的值。
所以例如,如果我在寻找数字20,它将返回w6。
我尝试了各种vlookup,Hlookups,Index和Match变种,但似乎没有能够让这个相当简单的工作。
在我爆炸之前,有人可以帮助我。
答案 0 :(得分:3)
试试这个:
= INDEX($A$2:$A$9,MATCH(1,MMULT(($B$2:$D$9=20)+0,{1;1;1}),0))
编辑 稍微好一点的公式:
= INDEX($A$2:$A$9,MATCH(TRUE,MMULT(($B$2:$D$9=20)+0,{1;1;1})>0,0))
返回表格中找到匹配项的第一个Week
。
显然只需将上面的20
替换为您要查找的任何值。
见下面的例子。
修改强>
更一般地说,不是将{1;1;1}
硬编码到公式中,而是可以使其动态化,例如
= INDEX($A$2:$A$9,MATCH(1,MMULT(($B$2:$D$9=20)+0,TRANSPOSE((COLUMN($B$1:$D$1)>0)+0)),0))
此外,如果您想从左到右而不是从上到下搜索表格,请执行以下操作:
= INDEX($A$2:$A$9,MATCH(1,MMULT(TRANSPOSE((ROW($A$2:$A$9)>0)+0),($B$2:$D$9=20)+0),0))
注意,这两个现在都是数组公式(必须输入 Ctrl + Shift + 输入而不是输入
答案 1 :(得分:1)