这是过去发生在我过去的事情。
出于某种原因,你的vlookup.' s将返回一个#N/A错误,而你不知道为什么。
一切看起来都很好,配方应该工作。但对于一些未知的原因,少数结果是错误。
这是第一次发生在我身上,我花了很多时候试图发现问题只发现一些查找数据有额外的空间角色!
这种情况经常发生。数据可以在开始或结束处有空格字符。它甚至可能在单词之间有多个不应该存在的空格。
既然我们知道了问题所在,又该如何解决呢?
在此帖子中,我们将查看各种方法来从我们的数据中删除这些不需要的额外空间字符。
表的内容
我们的帖子的示例数据
对于这篇文章,我们将查看一组简单的数据。只是 ”你好世界!“一遍又一遍地,但有各种额外的空间。
- 这里没有额外的空间。这只是一个控制,以确保我们应用我们的修复时,我们不会破坏正确的东西。
- 看起来不错,但实际上在末尾加了5个空格。
- 启动时有5个空格。领先的空间更容易发现。
- 这里我们在数据中有前导和尾随空格。
- 这些词之间有几个空格。在这种情况下,它是显而易见的,因为我在单词之间添加了5个空格。如果我们只有2个空格,可以根据使用的字体点点发现。
- 这个有三种可能。领先,落后和之间。
让我们来看看我们如何解决所有这些!
使用修剪功能删除额外的空格
我们将看到的第一种方法是最简单的。
额外的空间是如此常见问题,可以删除(或修剪)它们的功能。这是修剪功能。
它确实听起来可能会这样做。它从数据中缩小了任何过多的空格。它除以文本字符串中的所有空格,除非单词之间的单个空格。
TRIM函数有一个必需的输入,这就是我们想从其中删除多余空格的文本。输入可以是一个单元格引用B2或者像“你好世界一样的硬编码的字符串!“。
削减(B2)
会返回细胞的内容B2去掉多余的空格。
削减(“Hello World !")
会返回“你好世界!“。
使用查找和更换单词之间的额外空格
下一个方法将使用Excel的查找和替换搜索功能。
这只适用于删除单词之间的额外空格。
首先,我们需要选择要删除额外空间的单元格范围。
然后去家标签➜编辑➜按查找和选择按钮➜选择代替选项中的选项。
你也可以使用Ctrl.+H键盘快捷键。
两者都将打开查找和更换菜单,我们可以按下选项按钮以获取更多提前查找和替换选项。
在找什么部分,我们需要添加两个空格字符。我们可以按下空间在键盘上敲两下。
在用。。。来代替节中,我们需要添加一个空格字符。我们可以按下空间键盘上的酒吧。
我们可以知道空格字符在输入区域,因为每次按空格键时光标都会向右移动。
确保所选的其他高级选项在床单中和看式公式。
按下全部替换按钮。由于我们的数据中有5个空格,因此我们需要按下全部替换按钮几次,直到在数据中再也找不到任何双空格字符。
如果存在任何空格,这将在数据的开始或结尾处留下一个空格。
使用电源查询删除额外的空间
电源查询是关于数据转换的全部,因此它应该能够处理此任务。
选择数据,然后转到数据TAB➜按下来自桌/范围命令。
这将使我们的数据变成一个Excel表,如果它还没有被格式化。
我们可以确保所选数据范围是正确的,并在需要时调整它。我们的数据没有任何列标题,所以我们将离开我的桌子有标题盒子取消选中。
按下好吧按钮来创建表,电源查询编辑器将打开。
右键单击列标题➜选择变换➜选择修剪。
不幸的是,这不会在这些单词之间删除任何额外的空间,我们需要实现一对夫妇替换值转换步骤来实现这一点。
右键单击列并选择替换值从菜单。
与查找和替换方法一样,我们需要添加两个空格查找价值和一个空间用。。。来代替价值。然后我们可以按好吧按钮添加此转换。
我们需要重复此步骤,直到从我们的数据中删除所有额外的空间。
要将清理的数据恢复到Excel中,我们需要关闭并加载数据。
我们可以去家TAB在电源查询编辑器➜按下密切与负载➜选择关闭和装载到➜选择A.表格并选择要加载表的位置。
用VBA删除单词之间的额外空格
VBA也有一个内建的修剪功能。
子修剪空间()Dim RNG为范围暗区作为范围暗淡瞬间作为String Set RNG = RNG Tempcell = Cell.Value TempCell = Trim(TempCell)Cell.Value = TempCell下一个单元格结束子子
上面的代码将循环通过所选范围内的每个单元格并应用VBA修剪函数到小区内的值。
类似于电源查询修剪转换,它只会在任何文本的开始和结尾处删除空格。
结论
有许多方法可用于删除数据中发现的任何额外空格。
我们看看公式,查找和替换,功率查询和VBA。
在我看来,简单的TRIM工作表功能是最简单和最有效的方法。
嗨,约翰,很棒的帖子。
提示:在VBA中,两个工作表。修剪和应用。修剪functions remove spaces excess between characters.
谢谢你的尖端!