如下图所示,要求从员工信息表中,根据姓名查找籍贯。
公式1:使用VLOOKUP
=VLOOKUP(B11,B3:F7,4,FALSE)
兰色评:查找是VLOOKUP最擅长的,基本用法
公式2:使用LOOKUP
=LOOKUP(1,1/(B4:B7=B11),E4:E7)
兰色评:lookup(1或2,1/(条件),一组数)是lookup函数在查找时的固定用用法。
公式3:OFFSET+MATCH函数
=OFFSET(E3,MATCH(B11,B3:B7,0)-1,0)
兰色评:使用MATCH查找B11姓名在B列的行数,然后再用OFFSET偏移取值。
公式4:INDEX+MATCH组合
=INDEX(E3:E7,MATCH(B11,B3:B7,0))
兰色评:使用MATCH查找姓名所在行数,然后用INDEX按指定位置取数,INDEX+MATCH是除VLOOKUP之外最常用的查找公式。它的优势是可以实现从右至左的查找。
公式5:INDIRECT+MATCH组合
=INDIRECT("E"&MATCH(B11,B3:B7,0)+2)
兰色评:INDIRECT函数的好处是,它可以把单元格地址拆分成变量。上面公式由MATCH查找返回的行数和E组合成引用地址,然后再用INDIRECT函数根据组合成的地址取出数值。
公式6:INDIRECT+ADDRESS+MATCH函数
=INDIRECT(ADDRESS(MATCH(B11,B4:B7,0)+3,5))
兰色评:ADDRESS(行数,列数) 根据行和列数返回单元格地址,然后再用INDIRECT根据地址取值。
公式7:DGET函数
=DGET(B3:F7,4,B10:B11)
兰色评:DGET是数据库函数,公式中4是返回值(籍贯)所在的列数,B10:B11是条件区域(条件区域是由标题和值所在的单元格区域构成)
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。