EXCEL如何多条件查找

来源:百度知道 编辑:UC知道 时间:2024/06/15 05:34:38
A B C
1 3 5
2 4 6
1 5 7
2 6 8
3 4 7
1 8 5

如上表,首先我要找到A列对应数是1,并且要B列的数减2的绝对值是最小的(这里的2只是举例,也有可能是其他的数),然后显示的是同时满足上列两个条件的所对应的C列的数
我可能表述的有点问题,实际上是先选出A列是1的,然后在A列为1的条件下,再选择B列减2为最小值所对应的C列数,而不是同时满足这两个条件

同意一楼

chensheyu的方法,对于A1<>1的时候会出错,建议采用下面的公式
=VLOOKUP(MIN(IF(A1:A6=1,A1:A6*B1:B6,"")),B1:C6,2,0)
数组公式,需要按Ctrl+Shift+Enter确认公式的输入。

说明:由于B列都减去2的最小数与列列的最小数对应的单元格是同一个,公式中忽略了减2的计算。

如果非要加上减2的运算(估计在你的实际运算中,这个2可能是个变值)
=VLOOKUP(MIN(IF(A1:A6=1,A1:A6*(B1:B6-2),"")),B1:C6,2,0)

=SUMPRODUCT((A1:A6=1)*(ABS(B1:B6-2)=MIN(ABS(B1:B6-2))),(C1:C6))

awerlasdfwe说得不错,公式的确有误,也应楼主问题的补充,公式修改如下
=INDEX(C1:C6,MATCH(MIN(IF(A1:A6=1,ABS(B1:B6-2))),IF(A1:A6=1,ABS(B1:B6-2)),0),1)
这是数组公式,须按"Ctrl+Shift+Enter"键结束.
另发现awerlasdfwe朋友的公式当B列数值有重复时也会出错,当将楼主提供的数据中的A1改为2,B1改为5时,就会出错了.