Excel TRIM函数--去除多余空格的快速方法

  • Share This
Michael Brown

本教程演示了几种快速而简单的修剪Excel空格的方法。 了解如何删除前导、尾随和字与字之间的多余空格,了解Excel TRIM函数为何失效以及如何修复它。

你是否在比较两列重复的数据,但你的公式却找不到一个重复的条目? 或者,你将两列数字相加,但却一直只得到零? 还有,为什么你明显正确的Vlookup公式只返回一堆N/A错误? 这些只是你可能在寻求答案的几个问题的例子。 而且都是由于 额外空间 在你的单元格中的数字和文本值之前、之后或之间隐藏。

在本教程中,我们将研究TRIM函数的功能,它是在Excel中删除空格的最快和最简单的方法。

    TRIM函数--删除Excel中的多余空格

    在Excel中使用TRIM函数可以删除文本中的多余空格。 它可以删除所有前导、后导和中间的空格。 除去一个空格 词语之间的字符。

    TRIM函数的语法是人们可以想象的最简单的。

    TRIM(text)

    在哪里? 文本 是一个你想去除多余空格的单元格。

    例如,要删除A1单元格中的空格,你可以使用这个公式。

    =TRIM(A1)

    而下面的屏幕截图显示了结果。

    是的,就是这么简单!

    请注意,TRIM功能被设计成只删除空格字符,它在7位ASCII编码系统中的值为32。 如果除了额外的空格,你的数据还包含换行符和非打印字符,请将TRIM功能与CLEAN结合使用,删除ASCII系统中前32个非打印字符。

    例如,要从A1单元格中删除空格、换行符和其他不需要的字符,可以使用这个公式。

    =trim(clean(a1))

    更多信息,请参见如何删除Excel中的非打印字符

    为了摆脱非断裂空格(html字符 ),其值为160,请将TRIM与SUBSTITUTE和CHAR函数一起使用。

    =trim(substitute(a1, char(160), " ") )

    完整的细节,请看如何在Excel中删除非破折号的空格

    如何在Excel中使用TRIM函数--公式实例

    现在你知道了基础知识,让我们来讨论一下TRIM在Excel中的一些具体用途,以及你可能面临的陷阱和工作解决方案。

    如何修剪一整列数据中的空格

    假设你有一列名字,这些名字在文字前后都有一些空白,以及字与字之间有多个空格。 那么,你如何一次删除所有单元格中的所有前导、后导和多余的中间空格呢? 通过在该列中复制一个Excel TRIM公式,然后用其值替换公式。 下面是详细的步骤。

    1. 为最上面的单元格,即我们例子中的A2,写一个TRIM公式。

      =TRIM(A2)

    2. 将光标定位到公式单元格(本例中为B2)的右下角,当光标变成加号时,双击它,将公式向下复制一列,直到最后一个有数据的单元格。 结果,你将有两列 - 带有空格的原始名称和公式驱动的修剪过的名称。

  • 最后,用修剪后的数据替换原列中的数值。 但要小心!简单地将修剪后的列复制到原列上会破坏你的公式。 为了防止这种情况发生,你需要只复制数值,而不是公式。 下面是方法。
    • 选择所有带有Trim公式的单元格(本例中为B2:B8),并按Ctrl+C复制它们。
    • 选择所有有原始数据的单元格(A2:A8),按Ctrl+Alt+V ,然后按V ,这是粘贴数值的快捷方式,适用于 粘贴专用 > 价值观
    • 按回车键,完成!

    如何删除数字列中的前导空格

    正如你刚才所看到的,Excel的TRIM函数可以顺利地从一列文本数据中删除所有多余的空格。 但是,如果你的数据是数字,而不是文本,怎么办?

    乍一看,似乎TRIM功能已经完成了它的工作。 然而,仔细一看,你会发现修剪后的数值表现得不像数字。 下面是一些不正常的迹象。

    • 即使你对单元格应用数字格式,带有前导空格的原始列和修剪过的数字都是左对齐的,而普通数字默认是右对齐的。
    • 当选择了两个或多个带有修剪过的数字的单元格时,Excel在状态栏中只显示COUNT。 对于数字,它还应该显示SUM和AVERAGE。
    • 应用于修剪过的单元格的SUM公式返回0。

    从表面上看,修剪后的数值是 文本字符串 为了解决这个问题,你可以将修剪后的数值乘以1(要一次性乘以所有的数值,请使用Paste Special> Multiply选项)。

    一个更优雅的解决方案是将TRIM函数包含在VALUE中,像这样。

    =value(trim(a2))

    上述公式删除了所有前导和尾部的空格(如果有的话),并将结果值变成一个数字,如下面的截图所示。

    如何在Excel中只删除前导空格(左侧修剪)?

    在某些情况下,你可能会在字与字之间键入重复的甚至是三倍的空格,以使你的数据更好地被阅读。 然而,你确实想摆脱领先的空格,像这样。

    正如你已经知道的,TRIM函数会消除文本字符串中间的额外空格,这不是我们想要的。 为了保持所有中间的空格不被破坏,我们将使用一个更复杂的公式。

    =mid(a2,find(mid(trim(a2),1,1),a2), len(a2))

    在上面的公式中,FIND、MID和TRIM的组合计算了字符串中第一个文本字符的位置。 然后,你把这个数字提供给另一个MID函数,这样它就会从第一个文本字符的位置开始返回整个文本字符串(字符串长度由LEN计算)。

    下面的截图显示,所有前导空格都消失了,而单词之间的多个空格仍然存在。

    作为点睛之笔,用修剪后的数值替换原来的文字,如修剪公式例子的第3步所示,你就可以开始了

    提示:如果你还想去除单元格末尾的空格,可以使用修剪空格工具。 没有明显的Excel公式可以去除前导和尾部的空格,保持字与字之间的多个空格不变。

    如何计算单元格中的额外空格

    有时,在删除Excel表格中的空格之前,你可能想知道实际上有多少个多余的空格。

    要得到一个单元格中的额外空格数,先用LEN函数找出文本总长度,然后计算不含额外空格的字符串长度,用后者减去前者。

    =len(a2)-len(trim(a2))

    下面的截图显示了上述公式的运行情况。

    注意:该公式返回的计数为 额外空间 如果你想获得一个单元格中的总空格数,请使用这个替代公式。

    如何突出显示有多余空格的单元格

    当处理敏感或重要的信息时,你可能会在没有看到你到底要删除什么的情况下犹豫不决。 在这种情况下,你可以先突出含有额外空格的单元格,然后安全地消除这些空格。

    为此,用以下公式创建一个条件格式化规则。

    =LEN($A2)>LEN(TRIM($A2))

    其中A2是最上面的单元格,有你想突出显示的数据。

    该公式指示Excel突出显示字符串总长度大于修剪文本长度的单元格。

    要创建一个条件格式化规则,选择所有你想突出显示的单元格(行),不加列标题,进入到 首页 标签> 风格 组,并点击 条件性格式化 > 新规则 > 使用一个公式来决定哪些单元格需要格式化 .

    如果你还不熟悉Excel的条件格式化,你可以在这里找到详细步骤:如何根据公式创建条件格式化规则。

    正如下面的截图所示,该结果与我们在前面的例子中得到的额外空格数完全吻合。

    正如你所看到的,在Excel中使用TRIM函数是很简单和直接的。 尽管如此,如果有人想仔细看看本教程中讨论的公式,欢迎你下载Trim Excel Spaces工作簿。

    Excel TRIM不工作

    TRIM函数只删除了 空格字 在Unicode字符集中,还有一个叫做 "空格 "的字符,在7位ASCII字符集中由代码值32表示。 非断裂空间。 这在网页上通常作为html字符使用。 非破折号的十进制值为160,TRIM函数不能自行删除它。

    因此,如果你的数据集包含一个或多个空白,而TRIM函数不能去除这些空白,可以使用SUBSTITUTE函数将非破折号的空格转换成常规空格,然后再进行修剪。 假设文本在A1中,公式如下。

    =trim(substitute(a1, char(160), " ") )

    作为一个额外的预防措施,你可以嵌入CLEAN功能来清理单元格中的任何不可打印的字符。

    =trim(clean(substitute(a1, char(160), " ")) )

    下面的屏幕截图显示了区别。

    如果上述公式对你也不起作用,那么你的数据有可能包含一些特定的非打印字符,其代码值不是32和160。 在这种情况下,使用以下公式之一找出字符代码,其中A1是一个有问题的单元。

    领导空间。 =code(left(a1,1))

    后面的空格。 =code(right(a1,1))

    中间的空间(其中 n 是有问题的字符在文本串中的位置)。

    =CODE(MID(A1, n , 1)))

    然后,将返回的字符代码提供给上面讨论的TRIM(SUBSTITUTE())公式。

    例如,如果CODE函数返回9,也就是Horizontal Tab字符,你可以用下面的公式来删除它。

    =trim(substitute(a1, char(9), " " ))

    修剪Excel中的空格--一键删除多余的空格

    为了处理一项微不足道的任务而学习大量不同的公式,这听起来是不是很荒谬? 那么你可能会喜欢这种一键式的技术来消除Excel中的空格。 让我向你介绍我们的终极套装中的Text Toolkit。 除了改变大小写、分割文本和清除格式等其他功能外,它还提供了 修饰空间 选择。

    在你的Excel中安装了Ultimate Suite后,在Excel中删除空格就这么简单。

    1. 选择你要删除空格的单元格。
    2. 点击 修饰空间 按钮在功能区。
    3. 选择以下一个或全部选项。
      • 修剪 领导 蔓生的 空间
      • 修剪 额外的 词语之间的空格。 除去一个空格
      • 修剪 非断裂 空间 ( )
    4. 点击 修剪 .

    这就是它的全部!所有多余的空格都在一眨眼间被删除。

    在这个例子中,我们只是删除了前导和尾部的空格,保留了字与字之间的多个空格,以提高可读性--Excel公式无法应付的任务,只需点击一下鼠标就可以完成了

    如果你有兴趣尝试 修饰空间 在你的床单中,欢迎你在本帖末尾下载一个评估版。

    谢谢您的阅读,并期待下周与您见面。 在下一个教程中,我们将讨论在Excel中修剪空间的其他方法,请继续关注

    可用的下载

    修剪Excel空间--公式示例(.xlsx文件)

    终极套房 - 试用版 (.exe文件)

    Michael Brown is a dedicated technology enthusiast with a passion for simplifying complex processes using software tools. With more than a decade of experience in the tech industry, he has honed his skills in Microsoft Excel and Outlook, as well as Google Sheets and Docs. Michael's blog is dedicated to sharing his knowledge and expertise with others, providing easy-to-follow tips and tutorials for improving productivity and efficiency. Whether you're a seasoned professional or a beginner, Michael's blog offers valuable insights and practical advice for getting the most out of these essential software tools.