删除不需要的空间字符的4种方法

2018-09-27

这种事在过去发生过很多次。

出于某种原因,你的vlookup.返回#n / a错误,你不知道为什么。

一切看起来都很好,公式应该是有效的。但由于一些未知的原因,一些结果是错误的。

我第一次遇到这种情况时,我花了很长时间试图找到这个问题,却发现一些查找数据在末尾附加了额外的空格字符!

这发生了很多。数据可能在开始时或结束时具有空格字符。它甚至可能在不应该存在的单词之间有多个空格。

现在我们知道问题,我们如何解决它?

在此帖子中,我们将查看各种方法来从我们的数据中删除这些不需要的额外空间字符。

我们的Post示例数据

在这篇文章中,我们将着眼于一组简单的数据。这只是“你好世界!,但有各种额外的空间。

  1. 这里没有多余的空格。这只是一个控制,以确保当我们应用我们的修复时,我们不会破坏一些正确的东西。
  2. 看起来不错,但实际上还有5个空格到最后。
  3. 开始有5个空格。前导空格更容易发现。
  4. 这里我们在数据中有前导和尾随空格。
  5. 单词之间有几个空格。在本例中很明显,因为我在单词之间添加了5个空格。如果我们只有2个空格,根据使用的字体,可能会更难发现。
  6. 这个拥有三种可能性。领先,尾随和之间。

让我们看看如何解决这些问题!

使用TRIM函数删除额外的空间

我们要看的第一种方法是最简单的。

额外的空格是一个非常常见的问题,因此有一个函数可以删除(或修剪)它们。这是一个修剪功能。

它确实听起来可能会这样做。它从数据中缩小了任何过多的空格。它除以文本字符串中的所有空格,除非单词之间的单个空格。

TRIM函数有一个必需的输入,这就是我们想从其中删除多余空格的文本。输入可以是一个单元格引用B2或硬编码字符串,如“Hello World!””。

削减(B2)将返回cell的内容B2删除了额外的空间。

削减(“Hello World !")会回来”你好世界!”。

用查找和替换删除单词之间的额外空格

下一个方法将使用Excel的查找和替换搜索功能。

这只适用于删除单词之间的额外空格。

首先,我们需要选择要删除额外空间的单元格范围。

然后去选项卡➜编辑部分➜按下找到和选择点击➜代替选项从菜单。

你也可以用theCtrl+H键盘快捷键。

两者都将打开查找和更换菜单,我们可以按选项按钮更先进的发现和替换选项。

找到什么节中,我们需要添加两个空格字符。我们可以按空间在键盘上敲两下。

替换为节中,我们需要添加一个空格字符。我们可以按空间在键盘上按一次键。

我们可以告诉空间字符在输入区域中,因为每次按空格栏时光标都会向右移动。

确保其他高级选项被选中内表看公式

按下替换所有按钮。由于我们的数据中有5个空格的字符串,我们需要按替换所有按钮几次,直到它无法再找到数据中的任何双层空间字符。

如果存在任何空格,这将在数据的开始或结尾处留下一个空格。

使用电源查询删除额外的空格

Power Query是关于数据转换的,所以它应该能够处理这个任务。

选择数据,然后转到数据标签➜按下表/距离命令。

这将把我们的数据变成Excel表,如果它还没有被格式化。

我们可以确定选择的数据范围是正确的,并在需要时进行调整。我们的数据没有任何列标题,所以我们将我的表格有标题盒子不。

按下好的要创建表的按钮和电源查询编辑器将打开。

右键单击列标题➜选择变换➜选择修剪

不幸的是,这并没有删除单词之间的任何额外空格,我们需要实现一对替换值转换步骤来实现这一点。

右键单击列并选择替换值从菜单中。

与find和replace方法一样,我们需要添加两个空格作为价值发现和一个空格作为替换为价值。然后我们可以按好的按钮以添加此转换。

我们需要重复此步骤,直到从我们的数据中删除所有额外的空间。

要将清理后的数据返回到Excel中,我们需要关闭并加载数据。

我们可以去TAB在电源查询编辑器➜按下关闭和装载➜选择关闭和加载到➜选择一个表格并选择加载表的位置。

用VBA删除单词之间的额外空格

VBA也有一个内建的修剪功能。

子修剪空间()Dim RNG为范围暗区作为范围暗淡瞬间作为String Set RNG = RNG Tempcell = Cell.Value TempCell = Trim(TempCell)Cell.Value = TempCell下一个单元格结束子子

上面的代码将循环遍历选定范围内的每个单元格并应用VBA修剪函数转换为单元格内的值。

类似于电源查询修剪转换,它只会在任何文本的开始和结尾处删除空格。

结论

有很多方法可以移除数据中多余的空间。

我们看了公式,查找和替换,电源查询和VBA。

在我看来,简单的TRIM工作表功能是最简单和最有效的方法。

关于作者

约翰MacDougall

约翰MacDougall

John是一个微软MVP和自由职业顾问和专业从事Excel,Power BI,Power自动化,电源应用程序和SharePoint的培训师。您可以在博客或YouTube频道上找到其他有趣的文章。

订阅

广告

相关文章

注释

2的评论

  1. 费利佩•科斯塔gualberto

    嗨约翰,大帖子。

    提示:在VBA中,两个工作表。修剪和应用。修剪functions remove spaces excess between characters.

    • 约翰

      费利佩,谢谢你的建议!

获取最新消息

关注我们

在社交媒体上关注我们,了解Excel中的最新技巧!

把它钉在Pinterest上

分享这个