lua 实现模糊字段匹配_excel模糊匹配两列文字


干货预警,全文2288字,阅读需要6分钟,赶时间的同学点赞▲收藏★喜欢❤,一气呵成!

在Excel函数中,有那么的一个万金油Excel函数,它既可以正向查找逆向查找多条件查找,还能模糊匹配,它就是Vlookup。Vlookup与IF、SUM、sumifs/countifs誉为四大必学Excel函数。

附:Excel函数构造

可能许多同学不太了解函数的构造,一起来看看Excel函数在使用时有哪些规范,首先我们看一下标点符号的使用规范


lua 实现模糊字段匹配_lua 实现模糊字段匹配_02


在函数里面的标点要使用英文输入法下的标点,在Excel上,SUM的参数个数是不固定的,区域和数值的参数也能混合使用。


lua 实现模糊字段匹配_多列_03


接着我们看回VLOOKUP 的使用规范。

一、VLOOKUP函数

在Excel函数中,有那么的一个万金油Excel函数,它既可以正向查找逆向查找,还可以多条件查找,它就是Vlookup。 先看看它的语法:


lua 实现模糊字段匹配_数组_04

第一次看到的人,看不太明白其中的意思,下面我们通过具体的例子

1.正向查找

例子,我们要在成绩单中找到喜洋洋、哆啦A梦、大雄的段位分别是多少?


lua 实现模糊字段匹配_多列_05


这时候我们利用VLOOKUP正向查找即可,在段位处填入的公式为:

=VLOOKUP(J3,$B$2:$F$94,3,0)


lua 实现模糊字段匹配_数组_06


发现一:②查找范围,要根据①用谁找作为,查找范围的第一列。

发现二:返回列数是以②查找范围(红色区域)作为参考系,而不是整个表格作为参考系。【段位】在查找范围第3列,所以返回【3】


lua 实现模糊字段匹配_excel vlookup用法_07


喜洋洋、哆啦A梦、大雄的段位分别是黄金白金黄金

2.查找多列

例如现在我们要找喜洋洋段位数学语文成绩三样东西


lua 实现模糊字段匹配_多列_08


公式为:

=VLOOKUP($J3,$B$2:$F$94,COLUMN(C1),0)


lua 实现模糊字段匹配_多列_09


对比查找单列和查找多列的公式

查找单列


lua 实现模糊字段匹配_lua 实现模糊字段匹配_10


查找多列


lua 实现模糊字段匹配_数组_11


J3变成了$J3,固定引用J列 发现二:③返回第几列,由 固定的3变成相对引用COLUMN(C1),当我们往右拖动填充时,里面的C1变成了D1,E1。


lua 实现模糊字段匹配_数组_12


在函数中,COLUMN(C1)=3,COLUMN(D1)=4,COLUMN(E3)=5,COLUMN函数只与列有关,与行无关。


lua 实现模糊字段匹配_数组_13


3.逆向查找

例:我们现在要查找哆啦A梦的学号


lua 实现模糊字段匹配_数组_14


逆向查找表达式:

=vlookup(查找值,IF({1,0},查找值所在列,结果值所在列),2,0)

正常表达式:


lua 实现模糊字段匹配_excel模糊匹配两列文字_15


逆向查找表达式:


lua 实现模糊字段匹配_数组_16


通过对比上面的2个公式发现,主要是②在哪里查找发生了变化,由原来的区域,变成了IF函数嵌套。我们可以理解为红色部分的IF函数,重新构造了②查找区域


lua 实现模糊字段匹配_excel vlookup用法_17


许多知友对于在参数②处构建的虚拟查找区域,还不太了解,这里在给大家拆分一下。

两个公式
IF(1,数组1,数组2) 返回的结果是竖向的 数组1
IF(0,数组1,数组2) 返回的结果是竖向的 数组2
1和0是用逗号 拼在一块,其实就是将两个竖向的横向连接在一块。
从而形成了和实际存在一样的两列数组虚拟的存在,在Excel中叫做内存数组,它得到的结果和引用正向的区域结果是一样的,我们再对IF函数内F9计算一次

在工作时,我们可以直接构造出辅助列在数据最后一列,这样可以沿用原来的正向查找的方法,可以用隐藏或填充颜色把【辅助列】隐藏掉。所以我们要学会灵活多变。


lua 实现模糊字段匹配_excel vlookup用法_18


4.多重条件查找

北京樱木花道语文数学分别考了多少分?


lua 实现模糊字段匹配_excel vlookup用法_19


表达式:=VLOOKUP(查找值1&查找值2IF({1,0},查找值1所在列&查找值2所在列,结果所在列),2,0)


lua 实现模糊字段匹配_excel模糊匹配两列文字_20


重新构造的查找区域,大概是长下面的样子,这与上面的(3)逆向查找一样,重新构建②查找区域。


lua 实现模糊字段匹配_excel vlookup用法_21


所以,语文成绩的公式为:

=VLOOKUP($I3&$J3,IF({1,0},$B$2:$B$94&$C$2:$C$94,$E$2:$E$94),2,0)

输入后记得是按【Ctrl+Shift+Enter】,因为里面是含有数组运算的,均需要按三键结束才能达到正确答案。


lua 实现模糊字段匹配_数组_22


延伸阅读

如果多重条件查找返回的结果是数值,可以通过sumifs函数来匹配出结果值,这样省去写很长公式的麻烦。

函数的含义

=SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...) =SUMIFS(求和区域, 条件区域1, 条件1, [条件区域2, 条件2], ...)


lua 实现模糊字段匹配_数组_23


如数学成绩则表达为:

=SUMIFS(E:E,$B:$B,$I3,$C:$C,$J3)


lua 实现模糊字段匹配_lua 实现模糊字段匹配_24


So,解决问题的方法是多种多样的,改变思路能更好的解决问题,例如这个多条件查找一样可以利用构造出【查找值1&查找值2】辅助列,这种方法大家可以试试吧。

5.模糊匹配

例如需要把学生成绩分成优良中差四个等级,首先把这个优、良、中、差,四个分类的标准告诉计算机,需要转化成如图。注意的是,这个转化一定要从小到大排序,否则会出错。


lua 实现模糊字段匹配_excel模糊匹配两列文字_25


接着直接套用vlookup公式,这里先简单带过,下面我们再详细剖析VLOOKUP的具体用法和含义。我们就用vlookup的近似匹配,就能把分数归类到对应的档位中。

输入公式:=VLOOKUP([@成绩],$J$4:$K$7,2,TRUE)


lua 实现模糊字段匹配_excel vlookup用法_26


我们可以看到利用IF嵌套和VLOOKUP均能得到一致的结果,所以在IF嵌套较多就用vlookup模糊匹配来做吧。模糊匹配最后的第四个参数为:1或TRUE


lua 实现模糊字段匹配_lua 实现模糊字段匹配_27


此种用法在计算员工业绩提成、学生成绩分类贼好用!关于VLOOKUP的介绍就到这里,希望能帮助大家掌握好VLOOKUP函数的用法。