文章目录
- 1. VLOOKUP
- 用法
- 示例
- 注意
- 情况一
- 情况二
- 2. 通配符
- 用法
- 示例
- 3.XLOOKUP
- 用法
- 匹配类型
- 搜索模式
1. VLOOKUP
用法
【VLOOKUP函数】=VLOOKUP(要查找的值,查找区域,要返回的结果在查找区域的第几列,精确匹配或近似匹配)
示例
根据岗位编号,得到该员工的应发工资
=VLOOKUP(K2,A2:H50,8,FALSE)
- K2是查找的idx
- A2:H50是查找的范围,因为编号在最前面,应发工资在最后面,方便期间,一起包括住
- 8指的是,查找的数据是第几列的,也就是第8列,应发工资(从前往后数)
- False表示精确匹配(True是模糊匹配)
另一个傻瓜式操作,用if操作,然后求和得到的,
=IF(A2=$K$2,H2,0)
注意
VLOOKUP函数的限制:查找的区域在被查找值的左侧
情况一
根据员工编号找到应发工资
解决方法:将G2:G17列与H2:H19列做成了一个临时数据组,并让这2列交换位置
=VLOOKUP(K2,IF({1,0},H2:H19,G2:G19),2,FALSE)
情况二
根据性别和部门找到员工编号
解决方法,通过&连接两列,作为一个单位即可,其余不变
=VLOOKUP(J2&K2,IF({1,0},C2:C20&D2:D20,A2:A20),2,FALSE)
2. 通配符
用法
主要有三个,?
、*
、~
。
?
:替代一个任意字符*
:替代n个任意字符~
:将上述两个特殊字符转化为普通字符
示例
根据不完整的编号查找姓名
=VLOOKUP("*"&K2,A2:F20,2,0)
3.XLOOKUP
升级版本
用法
【XLOOKUP函数】==XLOOKUP(想要查找值, 想要在哪个数据区域中查找, 要返回的数据区域,, [ifnotfound], [matchmode], [searchmode])
- 第四参数(可选参数):ifnotfound,
- 找不到结果 -> 返回第四参数
- 省略 -> 返回#N/A
- 第五参数(可选参数):match_mode,指定匹配类型
- 第六参数(可选参数):search_mode, 指定要使用的搜索模式
匹配类型
- 参数为:0 ,精确匹配,未找到结果,返回 #N/A。 默认选项。
- 参数为:-1,近似匹配,未找到结果,返回下一个较小的项。
- 参数为:1,近似匹配,未找到结果,返回下一个较大的项。
- 参数为:2 ,通配符匹配
搜索模式
- 参数为:1,从第一项开始执行搜索。 这是默认选项。
- 参数为:-1,从最后一项开始执行反向搜索。
- 参数为:2,根据 lookup_array 按升序排序的二进制搜索。 如果未排序,将返回无效结果。
- 参数为:-2,根据lookup_array 按降序排序的二进制搜索。 如果未排序,将返回无效结果。
饿,我的excel版本没有xlookup,案例就不看了,有机会用到再说吧,