当前位置: 首页 > 科技观察

WPS新支持重功能!告诉你XLOOKUP有多强大

时间:2023-03-15 23:14:25 科技观察

前不久,WPS官方微博发布消息,称WPS即日起正式支持XLOOKUP功能。许多人感到惊讶。作为办公软件,加个功能不正常吗?有什么值得兴奋的?其实,让WPS“兴奋”是有道理的。原因就是这个XLOOKUP太强大了!示例1。反向查找  目的:通过“姓名”反向查找“员工编号”  公式:=XLOOKUP(G6,B:B,A:A)在日常工作中,我们经常会遇到利用姓名来查询员工number在原始数据的情况下,“员工编号”字段通常位于“姓名”之前,因此直接使用VLOOKUP肯定无法得到结果。通常的做法是用IF函数创建一个虚数组“IF({1,0},B:B,A:A)”,将“员工编号”和“姓名”临时互换,以满足运算要求的VLOOKUP。但是它的问题是对于新手童鞋来说,这个数组太难理解了。  如果我切换到XLOOKUP会怎么样?很简单,直接输入“=XLOOKUP(G6,B:B,A:A)”即可。整个语法基本上参考了VLOOKUP的习惯,先确定要查找的内容(G6),然后告诉表查找到哪里(B:B),最后返回对应列的结果(A:A)。相比之下,XLOOKUP的逻辑就清晰多了!例2.错误处理  目的:当查询没有结果时,显示“没有这样的人”  公式:=XLOOKUP(G6,B:B,A:A,"Nosuchpersonfound")按顺序为了防止LOOKUP、VLOOKUP等函数出现意外错误,我们通常会在函数外包一层IFERROR,手动控制错误信息的显示。但是,这种做法会使公式变长,而且效率不是很高。XLOOKUP的处理方式绝对简单粗暴,直接在函数中标注错误信息。在高效的同时,也让公式更加简洁,像下面这样:“=XLOOKUP(G6,B:B,A:A,”没有这样的人”)”。例3.批量查询  目的:通过“工号”查询该员工的所有信息  公式:=XLOOKUP(G8,A:A,B:E)写搜索器时,会批量输入原来的data查询你需要的。通常有两种解决方案,一种是使用VLOOKUP手动确定要查询的列,另一种是使用COLUMN函数配合VLOOKUP做一个半自动查询器。  那么XLOOKUP有没有更简单的方法呢?答案是肯定的,方法是直接填“=XLOOKUP(G8,A:A,B:E)”。语法上还是用了VLOOKUP的逻辑,先确定要查找的内容(G8),然后告诉表查找到哪里(A:A),然后在B:E列返回相应的信息。由于该功能的“溢出效应”,相邻的几个单元格(性别、职位、部门)也会自动填充结果,甚至省略了拖动的步骤。例4、多条件查询  目的:通过“姓名”和“性别”两组条件查询员工信息  公式:=XLOOKUP(G7&H7,B:B&C:C,D:D)重复姓名在现实中,当一个条件无法识别一个人时,加载第二组条件并不少见。比如本例中,小编使用了“姓名”+“性别”的双重条件验证。对于这样的需求,传统的VLOOKUP需要使用IF函数来生成一个虚数组。在XLOOKUP下,上述公式可以直接简化为“=XLOOKUP(G7&H7,B:B&C:C,D:D)”。例5.模糊查询  目的:根据分数给每个人打分。  公式:=XLOOKUP(D2,$H$2:$H$5,$I$2:$I$5,,-1)熟悉VLOOKUP的朋友,大多都知道有个“完全匹配FALSE”而这个函数末尾的“精确匹配FALSE”对于小参数近似匹配TRUE“。”近似匹配“就是我们常说的模糊搜索。一般来说,模糊搜索主要用于定义区域的值。对于比如90-100分为excellent,70-89分为good,类似这种分数段筛选,很适合使用模糊搜索。但是,它有一个前提,就是必须事先将值源按升序排列,否则无法得到准确的结果。但是使用XLOOKUP就不用那么麻烦了。它的第五个参数(输入公式时会有提示)直接提供了“0”、“-1”、“1”、“2”四种不同的匹配条件。以本例中使用的“-1”为例,表示当搜索结果未达到目标值499时,自动向下搜索(小于499)。正是有了这样一个选项,我们可以很容易地配置一个性能级别设置表。例6.横向查找  目的:输入商品名称,查询商品的销售额、销量、利润、利润率  公式:=XLOOKUP(B7,B1:E1,B2:E2)在Excel中,纵向除外除了搜索VLOOKUP,还有一个支持横向搜索的HLOOKUP。这两组函数虽然功能不同,但语法基本相同。不同之处在于,一种是按列查找,另一种是按行查找。其实我们的XLOOKUP也是结合了纵向和横向的查询机制。除了上面提到的垂直查询,还可以通过改变搜索区域来实现水平搜索。具体效果如上图所示。范例七、查询最后一条记录  目的:快速查询某商品最新进货价格  公式:=XLOOKUP(F4,B:B,C:C,,,-1)多条进货和out表格需要找到最后的出入境记录。这个看似简单的要求实现起来并不容易。通常我们使用LOOKUP创建一个虚拟数组,然后查找它。但是上面也说了,这种东东不适合新手看懂,其次数组函数太多也是拖累系统性能。特别是在一些大表中,频繁使用数组函数会使表速度极慢。XLOOKUP的加入让这个问题变得简单多了。它的解决方法很简单,只需要一个参数就可以搞定。仍以上述为例,如果要查询某商品的最新入库价格,只需在其第六个参数中输入参数值“-1”即可。返回的结果就是该商品的上次入库价格。不如写在最后  ?看完以上案例,是不是觉得豁然开朗?其实在日常使用中,XLOOKUP也有逻辑清晰、句子简洁的优点。举个最简单的例子,以前使用VLOOKUP时,我们往往要手动统计搜索范围后面的列数,而XLOOKUP直接使用列标签作为返回列,所以省略了这一步。同时,由于XLOOKUP还是一款全能型播放器,特别是对于新手来说更加友好。各种复杂的函数和数组都不用背,一个XLOOKUP搞定!