听雨一生 发表于 2021-10-20 15:11:00

如何通过VLOOKUP匹配两次条件

因为VLOOKUP只能匹配一次,取首次出现的数据,如图1如果有重复项就取不到数了,查了不少方法,感觉有个公式是最简便的,但是实际运用过程中,系统直接报错,不知道公式哪里有问题,实际工作中设置的公式等于VLOOKUP($B3:$C3,IF{1,0},数据!$A$2:数据!$L$2000,3),3,0),组合待匹配的条件是在B列和C列,请各位大侠指教下。谢谢!



梓殇雲昕 发表于 2021-10-22 05:15:43

=LOOKUP(1,0/((A1=$A$18:$A$30)*(B1=$B$18:$B$30)),$C$18:$C$30)
=VLOOKUP(A1&B1,IF({1,0},$A$18:$A$30&$B$18:$B$30,$C$18:$C$30),2,)数组

休闲城 发表于 2021-10-28 14:32:02

回答太及时了,我试下,先谢谢了

水流云淡 发表于 2021-12-5 09:14:34

用第一个公式,按大侠的指点修改了位置,变成了=LOOKUP(1,0/((A1=数据!$A$1:$A$30)*(B1=数据!$B$1:$B$30)),数据!$C$1:$C$30),取到数了。非常感谢!

马旭东 发表于 2021-12-9 05:34:04

第二个公式学习了下,因为水平有限,看不太懂,加个“数组”会报错,不加是#N/A,不知道为什么。不过第一个公式已经解决问题了,简单好用,再次感谢!

爱鱼 发表于 2021-12-20 06:14:50

sheet 1 C1=INDEX(数据!$C:$C,SMALL(IF(数据!$A$1:$A$26='1'!$A1,ROW($A$1:$A$26),4^8),ROW(A1)))
sheet 2 C1=INDEX(数据!$C:$C,SMALL(IF(数据!$A$1:$A$26='2'!$A1,ROW($A$1:$A$26),4^8),ROW(A1)))

暮鼓菩提 发表于 2021-12-30 18:37:08

非常感谢各位大侠指教
页: [1]
查看完整版本: 如何通过VLOOKUP匹配两次条件