Excel中,这些让人头疼的数据查找问题

${website.getHeaderOriginal(${article.taxonomyName})}

各位表亲好哈··|,今天和大家一起说说有关查找的问题··|--。

日常工作中··|,有关查找的问题非常多:比如说根据姓名查找身份证、根据工号查找职务、根据学号查找成绩等等··|--。

常用的查找类函数包括VLOOKUP、LOOKUP、MATCH等等很多··|,用法也各不相同··|,今天咱们主要说说在查找中遇到的一些问题··|--。


常规情况下的查找

如下图所示··|,要求根据E2单元格的工号在A:C列中查找对应的职务··|--。

用到的公式很简单哈:

=VLOOKUP(E2,A:C,3,)

还不知道VLOOKUP函数怎么用的表亲··|,可以查看咱们以前的内容··|,这里咱们就不细说了··|--。


有特殊字符的查找

如下图所示··|,A列的产品编号中包含多个问号、星号和波形符··|,要求根据D列的产品编号查询对应的供货商··|--。

如果再用刚才的方法··|,直接使用VLOOKUP函数··|,结果明显不对了··|--。

=VLOOKUP(D2, A:B,2,)

虽然VLOOKUP函数使用了精确匹配方式··|,但返回的是不正确的结果或是错误值#N/A··|--。

原因是什么呢|-··?

VLOOKUP函数将字符中的星号识别为通配符进行查询··|--。

如D2单元格中的产品编号“N42H19.8*5”··|,即被识别为以“N42H19.8”开头、以5结尾的字符串··|--。并且VLOOKUP函数有多个匹配结果时··|,只返回第一条内容··|,因此无法精确查询到需要的结果··|--。

对于含有波形符的查询值··|,VLOOKUP函数返回错误值#N/A··|,同样无法实现查询要求··|--。

解决的方法有没有呢|-··?往下看··|--。

可以利用等式中不支持通配符的特点··|,使用LOOKUP函数完成查询··|--。

=LOOKUP(1,0/(D2=A:A),B:B)

LOOKUP函数的第二参数使用等式··|,直接比较A2单元格中的产品编号与A列的数据是否相同··|,巧妙避免了通配符造成的查询错误··|--。

结果如下图:


区分大小写的查找

假如要求区分大小写进行匹配··|,问题又来了··|,由于等式不区分大小写··|,D2和D3单元格的查询结果返回了同样的内容··|--。

话说小芳啊··|,你咋这么让人不省心呢:

怎么破|-··?往下看:

可以利用FIND 函数区分大小写··|,并且不允许使用通配符的特点··|,使用LOOKUP函数和FIND函数的组合拳完成查询··|--。

=LOOKUP(1,0/FIND(D2,A:A),B:B)

结果如下图:

FIND函数返回D2单元格内容在A列中的起始位置··|--。

在本例中··|,如果A列的内容与D2相同··|,就返回数字1··|,否则返回错误值#VALUE!··|--。用0除以数字1和错误值··|,变成0和错误值··|--。

再用1作为查找值··|,在其中进行查找最后一个0的位置··|,并返回B列对应的供货商姓名··|--。


好了··|,今天的内容就是这样吧··|,祝各位表亲们天天开心··|--。


图文制作:祝洪忠



长按下面二维码图片··|,点”识别图中二维码“然后再点关注··|,每天都会收到最新excel教程··|--。


ExcelHome··|,微软技术社区联盟成员



Excel速成班开始招生··|,限时特价!

想系统学习的小伙伴们不要错过~~

长按下图··|,识别二维码了解详情

${website.getFooterOriginal(${article.taxonomyName})}

发布者 :利升国际官网_利升国际官方网站_利升国际唯一网址 - 分类 利升国际官网