Excel中多条件查数据方法
Excel中多条件查数据方法
在使用Excel中,如果根据某一个条件,查表中的值,这是一件较为容易的事情,MATCH()、INDEX()、LOOKUP()、VLOOKUP()、HLOOKUP()等函数均可较为容易的实现。但如果要进行满足多条件查,则是一件不容易的'事情,而工作中会经常遇到需要对满足两个以上条件的数据进行查并引用的问题,下面是店铺提供多种方法如:数组公式、VLOOKUP函数、INDEX和MATCH函数等等,大家可以根据情况选择。SHEET1工作表内容如图:
现在要求在SHEET2工作表的A、B列输入有关内容后,C列自动从SHEET1工作表中查并引用相应的C列的内容。SHEET2工作表如图:
SHEET2工作表C1单元格使用以下数组公式,可达到目的: =IF(OR(A1="",B1=""),"",OFFSET(Sheet1!$C$1,SUM(IF((Sheet1!A$1:A$1000=A1)*(Sheet1!B$1:B$1000=B1),ROW(Sheet1!C$1:C$1000),0))-1,0,1,1)) 注意:输入完公式后要按Ctrl+Shift+Enter键,让它自动加上数组公式符号"{}"。
用VLOOKUP函数解决方法:
=IF(OR(A1="",B1=""),"",VLOOKUP(A1&B1,IF({1,0},Sheet1!A$1:$A$1000&Sheet1!B$1:B$1000,Sheet1!C$1:C$1000),2,0))
用INDEX和MATCH函数解决方法:
=IF(OR(A1="",B1=""),"",INDEX(Sheet1!C$1:C$1000,MATCH(A1&B1,Sheet1!A$1:A$1000&Sheet1!B$1:B$1000,0))) 这两个也是数组公式。
另提供两个不用数组公式的解决方法:excel中index函数的使用方法
=IF(OR(A1="",B1=""),"",INDIRECT("Sheet1!$C"&SUMPRODUCT((Sheet1!A$1:A$1000=A1)*(Sheet1!B$1:B$1000=B1)*ROW(Sheet1!C$1:C$1000)))) =IF(OR(A1="",B1=""),"",LOOKUP(2,1/((Sheet1!A$1:A$1000=A1)*(Sheet1!B$1:B$1000=B1)),Sheet1!C$1:C$1000))
推荐使用VLOOKUP的应用,而且不用太多改变原数据库。
增加对#N/A的判断函数:
更改函数如下(数组函数)
=IF(ISERROR(VLOOKUP(A1&B1,IF({1,0},Sheet1!A$1:$A$1000&Sheet1!B$1:B$1000,Sheet1!C$1:C$1000),2,FALSE)),"",VLOOKUP(A1&B1,IF({1,0},Sheet1!A$1:$A$1000&Sheet1!B$1:B$1000,Sheet1!C$1:C$1000),2,0))
如果该位置显示为0 可以使用“条件格式……” 当该格=0时,字体颜同背景。
【Excel中多条件查数据方法】
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论