首页 > 解决方案 > Excel:删除第三个空格后除一个字符外的所有内容

问题描述

此公式删除单元格中第三个空格之后的所有内容,我想在第三个空格之后留下一个字符。我不确定如何进行调整。谢谢你的帮助。

=IF(ISERROR(FIND(" ",A1,FIND(" ",A1,1)+1)),A1,LEFT(A1,FIND(" ",A1,FIND(" ",A1,1)+1))) 

标签: excelfunctionfind

解决方案


这?

=IFERROR(LEFT(A1,FIND(" ",A1, FIND(" ",A1,FIND(" ",A1,1)+1)+1)+1),"")

公式

或者

=LEFT(A1,FIND(CHAR(1),SUBSTITUTE(A1," ",CHAR(1),3))+1)

或者,根据 Allen Wyatt说法,使用我以前从未听说过的名为 SEARCHB 的函数,

=LEFT(A1,SEARCHB(" ",A1,(SEARCHB(" ",A1,(SEARCHB(" ",A1,1)+1))+1))+1)

快速阅读告诉我,我不妨做更熟悉的

=LEFT(A1,SEARCH(" ",A1,(SEARCH(" ",A1,(SEARCH(" ",A1,1)+1))+1))+1)

仅当 DBCS 语言设置为默认语言时,SEARCHB 才对每个字符计算 2 个字节。否则 SEARCHB 的行为与 SEARCH 相同,每个字符计算 1 个字节。


笔记:

如果您实际上的意思是您只想要第三个空格之后的第一个字符,而不需要其他任何字符,那么使用您已经找到第三个空格的位置并添加一个的事实,与FIND(" ",A1,FIND(" ",A1,FIND(" ",A1,1)+1)+1)+1, 结合使用MID函数以返回从该位置开始的一个字符IE

=MID(A1,FIND(" ",A1,FIND(" ",A1,FIND(" ",A1,1)+1)+1)+1,1)

结果:

结果

您可以将相同的逻辑与我在顶部列出的其他解决方案一起使用。


推荐阅读