Excel区分大小写查找
进行查找时,我们有时需要对数据进行区分大小写的查找,该怎么操作呢?
如下图,偶要查找“xingkong”
按键调出【查找和替换】对话框
输入查找内容:xingkong,点查找全部
不区分大小写的全部被找到了
怎么解决呢?
点【选项】
勾选【区分大小写】前面的复选框
点【查找全部】,完成对“xingkong”的查找
查找业务员为“xingkong”的业绩:
输入公式:
=INDEX(B2:B7,MATCH(D2,A2:A7,0))
有没有发现什么问题呢?
该公式返回的结果是“4542”,这是业务员为“XingKong”的业绩
而我们要查找的是业务员为“xingkong”的业绩,返回结果是“7064”才对。
函数MATCH在进行查询时,是不区分大小写的,这就需要借助函数EXACT来进行查询
输入公式:
=INDEX(B2:B7,MATCH(1,EXACT(D2,A2:A7)*1,0))
数组公式,按
函数EXACT:比较两个字符串是否完全相同(区分大小写)。返回TRUE或FALSE。
EXACT(D2,A2:A7)部分将D2内容与A2:A7内容进行比较,完全相同的返回逻辑值TRUE,不完全相同的返回逻辑值FALSE,该部分返回{FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}
发生四则运算时,逻辑值TRUE相当于1,FALSE相当于0
*1是将{FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}转换为{0;0;0;1;0;0}
把1作为函数MATCH的第一参数,找到1在{0;0;0;1;0;0}中的位置4
公式就是INDEX(B2:B7,4),返回结果为7064。
也可以不需要转换,直接将逻辑值TRUE作为函数MATCH的第一参数
输入公式:
=INDEX(B2:B7,MATCH(TRUE,EXACT(D2,A2:A7),0))
数组公式,按
类似于函数EXACT能区分大小写的函数还有FIND、SUBSTITUTE等等
输入公式:
=LOOKUP(1,0/FIND(D2,A2:A7),B2:B7)
函数FIND:返回一个字符串在另一个字符串中出现的起始位置(区分大小写)
FIND(D2,A2:A7)部分抹黑按F9键得到{#VALUE!;#VALUE!;#VALUE!;1;#VALUE!;#VALUE!}
利用0/ #VALUE!= #VALUE!,0/1=0的特性
将符合条件的值变为0,即{#VALUE!;#VALUE!;#VALUE!;0;#VALUE!;#VALUE!}
用函数LOOKUP进行查找,查找时可以忽略错误值
用大于第二参数所有数值的1作为查找值,即可查找出符合条件的值。
也可以将函数FIND换成EXACT
输入公式:
=LOOKUP(1,0/EXACT(D2,A2:A7),B2:B7)