从字符串中删除前导和尾随空格,同时保留其间的空格

时间:2013-07-10 20:09:02

标签: excel excel-2007 excel-formula

我在单元格A1中有一个看起来像

的字符串
    abc      123    

这是一个包含多个前导空格,尾随空格和中间空格的字符串。 如何在保留中间空格的同时去除前导空格和尾随空格?

结果应为

abc      123

我已尝试使用TRIM功能

=TRIM("    abc     123    ")

但这是我得到的结果

abc 123

我在Excel 2007上运行,如果这有所不同。

2 个答案:

答案 0 :(得分:5)

您可以尝试这个简单的UDF。 Vim版本的Trim不会删除任何内部空间。

在常规模块中:

Function VbaTrim(v)
    VbaTrim=Trim(v)
End Function

在工作表上:

=VbaTrim(A1)

答案 1 :(得分:3)

我推荐Tim的UDF,因为没有简单的方法可以用公式做到这一点....但是对于它的价值而言,这是我过去建议的公式

=IF(LEN(TRIM(A1)),REPLACE(LEFT(A1,LOOKUP(2^15,FIND(RIGHT(TRIM(A1)),A1,ROW(INDIRECT("1:"&LEN(A1)))))),1,FIND(LEFT(TRIM(A1)),A1)-1,""),"")

它处理空白的单元格(返回空白)和仅包含空格的单元格(因为那些被认为是前导/尾随的单元格也返回空白)