有一个问题与Excel“文本到列”function – 需要删除空间

我有100行的数据,每一行都包含多个用逗号分隔的项目列表。 例如:

狐狸,青蛙,狗,糖果,泰勒,达人,狗,劳拉,帽子里的猫,记住你最喜欢的一天,有一个有趣的时间

等等

正如你所看到的,它不是一个简单的“姓,名”分离。

我的问题是当我使用文本到列,我可以很容易地用逗号分隔,但即时通讯,然后留在列表中的每一个第二项之前的空间。 我需要删除每个逗号后的空格(但不是每个单词之后的空格)!

我不能在分隔符选项中select“逗号”和“空格”,因为这样当我只想删除逗号后面的空格时,它将删除单词之间的每个空格(例如“havingafuntime”)。

我知道我可以使用“修剪” – 但我不知道是否有一种方法来删除的空间,而分离文本的列,一举成立。

当用excel工作“正常”时,你可以简单地忽略这种情况下的任何公式。

而不是=SUBSTITUTE(A1,", ",",")您可以简单地select您想要更正的范围(如整个A:A列),然后按Ctrl + H(replace)。 将“查找内容”设置为", "和“replace为"," (不包含" )。点击全部replace,全部选中(非选中的单元格不会被replace)。

内置的“文本到列”不能以一种方式来操作。

编辑

做为一个单击macros,只要这4行应该做你想做的事情:

 Sub text2cols() Selection.Replace ", ", "," Selection.TextToColumns Selection.Resize(1, 1), 1, , , , , True End Sub 

只要select你想分开的范围并运行macros;)

在要使用文本转换为列的列的开头附近的单元格中,input以下公式并复制下来。

 =substitute(A1,", ",",") This will remove the space after every , 

然后复制并粘贴作为结果列的值。

然后使用“分隔符”执行“文本到列”操作。

另一个select是使用Power Query。

  1. 根据您的Excel版本,您应该可以通过Googlesearch“下载Power for Excel for Excel 20X”下载安装Power Query
  2. 点击你的数据集
  3. 在电源查询选项卡上,您将看到“从表格”(在Excel 2016中,它已经在数据选项卡中,您不必下载它)
  4. select您的数据是否有标题
  5. 去转换
  6. 在分隔列下select分隔符
  7. select逗号
  8. 在格式下,您将看到修剪
  9. 转到首页标签selectclosures并加载,你就完成了

我知道这是一个旧的post,但我发现这样做谷歌search,因为我有同样的问题,OP。 但是,在阅读了一些build议后,我可以使用“查找和replace”function。 我select了有问题的专栏,并做了以下工作:

find:“,​​”(不含引号 – 用于显示空间)replace为:,(无空格)

从本质上讲,这使得名单从:狐狸,青蛙,狗,糖果,泰勒,达人,小狗,劳拉,帽子里的猫,记住你最喜欢的一天,有一个有趣的时间

把它变成这样:一只狐狸,一只青蛙,一只狗,糖果,泰勒,达人,小狗,劳拉,戴着帽子的猫,记住你最喜欢的一天,玩得开心

然后,我使用由逗号分隔的文本到列function,它工作得很好。

我希望这可以帮助别人。