ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > 函数与公式 > Vlookup处理查找错误-空格在中间如何处理

Vlookup处理查找错误-空格在中间如何处理

作者:绿色风 分类: 时间:2022-08-18 浏览:177
楼主
传递
注此源贴是ETgouweicao78前辈发的贴 (Vlookup和Lookup函数一一过招)详见http://www.exceltip.net/thread-435-1-1.html
这里只取了部分作为交流内容。
我在扫盲过程中根据草前辈思路,自己在被查询条件中,空格放中间时遇到#N/A 问题,补充作为学习知识要点,期望得到更多的指导。
举例 数据源为:“张 三  丰   ” 张三丰中间存在无规律空格。
  1. =VLOOKUP(TRIM(B25),$B$10:$C$11,2,)
返回#N/A
  1. =VLOOKUP(SUBSTITUTE(ASC(B25)," ",),$B$10:$C$11,2,)
测试结果正确。

验证2,3,  “ 张三丰”  “张三丰 ”,“张三丰”前或后有空格。
  1. =VLOOKUP(SUBSTITUTE(ASC(B35)," ",),$B$10:$C$11,2,)
测试结果正确。

除了单词之间的单个空格外,清除文本中所有的空格。在从其他应用程序中获取带有不规则空格的文本时,可以使用函数 TRIM。
要点  TRIM 函数设计用于清除文本中的 7 位 ASCII 空格字符(值 32)。在 Unicode 字符集中,有一个称为不间断空格字符的额外空格字符,其十进制值为 160。该字符通常在网页中用作 HTML 实体  。TRIM 函数本身不删除此不间断空格字符。

TRIM 函数设计用于清除文本中的 7 位 ASCII 空格字符(值 32)。值160的那种空格,trim不能去除。

trim的这个细节被很多人忽略。lookup处理查找错误补充-空格在中.jpg
 

lookup处理查找错误补充-空格在中.rar
2楼
acecrazy
普通的半角空格在中间用substitute就可以了,但是全角的不能直接替换为空的。
所以用了asc全角转半角函数。
3楼
lrlxxqxa
传递学得越来越精了
4楼
gouweicao78
从“求知探秘”方面来说,探索这些解决方法是不错的。
从“解决问题”方面来说,建议参考“疑难千寻千解”丛书的自序《寻》:
求知探秘当志存华山论剑之高远,解决问题应意守无剑无招之寻抄…不慕华丽的招式,但求直击问题之根源,用简单的方法办成复杂的事情


先看问题根源:数据不规范,可能存在空格或不可见字符。
再看解法限制:如果没有限制一定不许对源数据进行改动,那么就没有必要为了“可能”存在的问题,头痛医头式解决它。如果现在又有条件求和呢,是不是又要SUMPRODUCT中再嵌套一下TRIM\CLEAN\SUBSTITUTE之类的函数?因此,对源数据进行查找替换操作,或者用TRIM等函数得到规范数据后选择性粘贴为值,替换原先的数据,都可以为后续各方面的问题扫清障碍。

当然,有的时候碰到的问题总是比较奇怪的,也会碰到一些特殊但确实必须的原因,限制对源数据的改动。这时候,掌握的这些解决方法才有用武之地。
5楼
gouweicao78
另,1楼帖子对“标签”没有整理,怎么这个帖子是“张三丰, 数据源, 过程”?应该使用高度概括的词来做关键词。
6楼
bensonlei
朋友们想必都遇到过两个相同的数或项目得不到相应的数据(比如基准列有空格,数字与文本不相符)在解题中无意发现
数组公式
  1. =VLOOKUP(TRIM(A23),TRIM(G$23:I$29),3,0)
可以同时解决这个引用问题。特分享给大家。


VLOOKUP和格式_bensonlei.zip


7楼
传递
新手发帖容易犯错,谢谢前辈及时指导。
8楼
lgh978
没想到里面还有这么多的技巧
9楼
yangjieabc
公式不错,只是想不明白加了TRIM和数组怎么就好使了? 这里怎么又数组了
纳闷....
10楼
rolex518
Ctrl+Shift+Enter 实现数组,不加数组,但是取不到数,是为什么,请教!
11楼
传递
TRIM 函数设计用于清除文本中的 7 位 ASCII 空格字符(值 32)。在 Unicode 字符集中,有一个称为不间断空格字符的额外空格字符,其十进制值为 160。该字符通常在网页中用作 HTML 实体  。TRIM 函数本身不删除此不间断空格字符。
12楼
沧海巫山
学习了ASC的用法
13楼
卫今仑军
以前用VLOOKUP经常会出现这种情况,看了介绍才知道可能存在空格,学习了。同意草版的查找替换去掉空格的方法,感觉对象我这样的菜鸟简单些。
14楼
weikang2516
学习了,TRIM函数应用和VLOOKUP结合起来

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap