在excel中用多个匹配标准find行号
我需要能够find行的行号,从A1
匹配标准等于或大于列C
值,小于或等于列D
值
我可以使用INDEX
和MATCH
组合,但不知道这是我应该用于多个标准匹配的东西。
任何帮助或build议,高度赞赏。
我不会使用MATCH
获取行号,因为您有多个条件。 但是,我仍然会使用INDEX
来获得E中行的值,一旦发现正确的行号。
所以,而不是MATCH
我会使用包含多个条件的IF
语句使用数组公式。 现在请注意,数组公式需要用ctrl
+ shift
+ enter
。 IF
语句如下所示:
=IF((A1>=C:C)*(A1<=D:D),ROW(A:A),"")
注意:在这里我没有使用AND
公式,因为它不能接受数组。 但是由于布尔variables在Excel中只是1或0,因此乘以标准就可以了。
这现在给我们一个只包含空格和有效行号的数组。 这样,如果第5行和第7行都是有效的,那么数组将如下所示:
{"","","","",5,"",7,"",...}
现在,如果我们用一个SMALL
封装IF
语句,我们可以得到我们想要的任何有效的行。 在这种情况下,因为我们只想要第一个有效的行,我们可以使用:
=SMALL(IF((A1>=C:C)*(A1<=D:D),ROW(A:A),""),1)
如果第一个有效行是5,那么这将返回5.增加SMALL
公式的K
值将允许你抓住第二,第三等有效行。
现在当然,因为我们有行号,一个简单的INDEX
将会得到E列中的值:
=INDEX(E:E,SMALL(IF((A1>=C:C)*(A1<=D:D),ROW(A:A),""),1))