各位小伙伴们大家好,我是Excel归故乡。今天来给大家解决群里经常提问的第二个问题,如何用简称匹配全称。这个用法在Excel中我们称之为查找值的模糊匹配,我们实际工作中经常遇到这样的情况,同事将某个产品或者是公司名称等用简称来代替,但是我们的数据源中是全称,这时候要去提取对应的信息,直接用VLOOKUP函数就不可行。比如在药店来了个人,他说他要买药,但是只记得药里面有两个字是“西林”,作为医生可以根据经验很快判断出来是什么药,那我们如何通过VLOOKUP去实现判断呢?今天我们就来说说这个问题。
首先大家要知道,VLOOKUP函数的第一参数是接受通配符的,我们在视频里是有详细讲解的,这里就不展开讲。这里简单介绍一下通配符,Excel中有两个通配符分别是*和?,*可以代表一串字符串,?代表一个字符,他们可以实现任意字符的代替作用。既然知道可以使用通配符,那我们就想办法用通配符将我们要匹配的全称表示出来就可以进行匹配。由于病人并不知道自己记得“西林”二字位于全称的什么位置,并且不知道这个药的全称到底有多少个字,所以我们需要在关键字的前后分别加上一个星号,用来代替不知道的其他字。比如这里,我们要用西林表示阿莫西林胶囊的全称,可以写成*西林*(如果关键字是引用单元格内容,则需要用连字符&前后连接*,并且*需要用英文双引号引起来,比如本案中我们需要写"*"&F2&"*")。既然已经用Excel接受的方式表达出了全称,那我们就可以用这个通配符表示全称进行匹配了,如下图所示:
本案例我们是用单元格引用方式,如果直接写则需要用*关键字*的写法:=VLOOKUP("*西林*",B1:C11,1,),第一个星号就代替了全称中“阿莫”二字,第二个星号代替的是全称中“胶囊”二字,这样就得到了全称的表达式。
知道通配符用法之后是不是觉得这个查找特别简单。通配符在Excel中的使用范围很广,后续我们将继续讲解。这里留下一个问题给大家思考,如果说这个病人,他记得关键字不是西林,而是“胶囊”二字,我们包含胶囊的药品就很多了,为了让病人确定是什么药,我们可以将包含“胶囊”的药品都列出来给病人看,那这种又该如何操作呢?这个问题我们将在下期给大家讲解~
原创不易,希望大家多多支持,期待与大家一起进步!