Note: The other languages of the website are Google-translated. Back to English

如何在Excel中将多个单元格与空格,逗号或其他分隔符组合成一个单元格?

当您将多个列或行中的单元格合并为一个单元格时,合并后的数据可能不会被分隔。 但是,如果要用指定的标记(例如空格,逗号,分号或其他标记)将它们分开,该怎么办? 本教程将为您介绍一些方法。


使用公式将单元格的行或列连接到一个带有空格,逗号或其他分隔符的单元格中

在Excel中,您可以使用以下公式将一行单元格或一列单元格合并为一个单元格。


方法A:使用“&”运算符合并单元格

在Excel中,您可以使用“&”运算符来组合不同的文本字符串或单元格值。

请输入以下公式以将单元格分成多列:(用空格分隔合并的结果,您可以根据需要用其他分隔符替换空白。)

=A2&" "&B2&" "&C2

然后,将填充手柄向下拖动到要应用此公式的单元格上,并且来自不同列的数据已合并到一个单元格中,请参见屏幕截图:

  • 提示:
  • 在上面的公式中,您可以用其他分隔符替换&运算符之间的空格,例如 =A2&"-"&B2&"-"&C2
  • 如果您需要合并多个行中的单元格值,则只需更改单元格引用,如下所示: =A2&" "&A3&" "&A4&" "&A5&" "&A6&" "&A7

方法B:使用串联功能合并单元格

Excel中的连接功能还用于将多个文本字符串或单元格值连接到一个单元格中。

请输入以下公式或将其复制到空白单元格中:

=CONCATENATE(A2, "-", B2, "-", C2)

然后,将填充手柄向下拖动到要应用此公式的单元格上,您将得到以下结果:

  • 提示:
  • 在上面的公式中,您可以将“-”字符替换为其他分隔符,例如 =CONCATENATE(A2, ";", B2, ";", C2)
  • 如果您需要合并多个行中的单元格值,则只需更改单元格引用,如下所示: =CONCATENATE(A2, "-", A3, "-", A4, "-", A5, "-", A6, "-", A7)

方法C:使用Textjoin函数合并单元格

如果您具有Excel 365和更高版本,则有一个新功能-Textjoin,此功能还可以帮助您将多个单元格合并为一个单元格。

输入以下公式或将其复制到空白单元格中:

=TEXTJOIN(",",TRUE,A2:C2)

然后,拖动填充手柄以将此公式应用于其他单元格,请参见屏幕截图:

  • 小贴士:
  • 在上面的公式中,您可以用其他分隔符替换“,”字符,例如 =TEXTJOIN("/",TRUE,A2:C2)
  • 要合并多个行中的单元格值,只需更改单元格引用,如下所示: =TEXTJOIN(",",TRUE,A2:A7)
  • 此TEXTJOIN还可以使用分隔符将一系列单元格组合为单个单元格,如下所示: =TEXTJOIN(",",TRUE,A2:C7)

使用指定的分隔符将单元格的行,列或范围合并为一个单元格

Kutools for Excel 支持强大的功能-结合 这可以帮助您将基于行,列或单元格范围的所有数据合并到一条记录中,而不会丢失数据。 请参见下面的演示。    点击下载Kutools for Excel!


通过用户定义的功能将单元格的行或列连接到一个具有空格,逗号或其他分隔符的单元格中

在Excel中,您还可以创建用户定义函数,以将行或列的单元格合并为带有空格或指定标记的单个单元格。

1。 保持 ALT + F11 键盘上的按键打开 Microsoft Visual Basic应用程序 窗口。

2。 点击 插页 > 模块,然后将VBA复制到模块中。

VBA:将基于行或列的单元格合并为一个带有特定分隔符的单元格:

Function Combine(WorkRng As Range, Optional Sign As String = "~") As String
Dim Rng As Range
Dim OutStr As String
For Each Rng In WorkRng
    If Rng.Text <> " " Then
        OutStr = OutStr & Rng.Text & Sign
    End If
Next
Combine = Left(OutStr, Len(OutStr) - 1)
End Function

小技巧:在以上脚本中,“Function Combine(WorkRng As Range, Optional Sign As String = "~") As String“,分隔符”~指定了“”以分开合并的结果,您可以更改它以满足您的需要。

3。 然后请输入公式 =Combine(A2:C2) 在空白单元格中,然后将填充手柄拖到要应用此公式的范围内,该行中的所有单元格都将合并为带有虚线的单元格。 看截图:

小贴士:使用上述用户定义函数,您还可以根据列组合单元格值,只需输入此公式 =Combine(A2:A7) 以获得所需的合并数据。


使用公式将单元格的行或列连接到一个具有换行符的单元格中

有时,您可能需要使用换行符来分隔串联的文本字符串,通常,CHAR(10)将返回换行符。 在这里,您可以使用以下方法解决此任务:


方法A:使用串联功能将带有换行符的单元格合并

在这里,您可以将连接函数与Char(10)字符组合在一起,以获得合并结果,该合并结果由换行符分隔。

1。 请输入或复制以下公式:

=CONCATENATE(A2,CHAR(10),B2,CHAR(10),C2)

然后,将填充手柄向下拖动到要应用此公式的单元格上,您将得到以下结果:

2。 然后,您应该点击 首页 > 自动换行 格式化单元格,然后,您将根据需要获得结果:

小贴士:要合并多个行中的单元格值,只需更改单元格引用,如下所示: =CONCATENATE(A2,CHAR(10),A3,CHAR(10),A4,CHAR(10),A5,CHAR(10),A6,CHAR(10),A7)


方法B:使用Textjoin函数将带有换行符的单元格组合在一起(Excel 365和更高版本)

如果需要组合多个单元,则上面的公式可能有点困难,因此,Textjoin函数可以快速轻松地处理此任务。

请输入以下公式或将其复制到空白单元格中:

=TEXTJOIN(CHAR(10),TRUE,A2:C2)

得到合并结果后,请记住将公式单元格设置为 自动换行,请参见屏幕截图:

小贴士:要合并多个行中的单元格值,只需更改单元格引用,如下所示: =TEXTJOIN(CHAR(10),TRUE,A2:A7)


通过使用出色的功能将行,列或单元格范围连接到具有指定分隔符的一个单元格中

如果您对以上公式和代码感到不满意,请在这里推荐一个有用的工具- Kutools for Excel,其 结合 功能,您可以按行,列或范围将单元格值快速组合到一个单元格中。

提示:申请这个 结合 功能,首先,您应该下载 Kutools for Excel,然后快速轻松地应用该功能。

安装后 Kutools for Excel,请这样做:

1。 选择要合并到单元格中的范围单元格值。

2。 请单击以应用此功能 库工具 > 合并与拆分合并行,列或单元格而不会丢失数据。 看截图:

doc用逗号将数据合并9 1

3。 在弹出的对话框中,请指定所需的操作,如下图所示:

4。 然后,点击 Ok,您将获得如下屏幕截图所示的结果:

1)。 将每一行的单元格值合并为一个单元格:

2)。 将每一列的单元格值合并为一个单元格:

3)。 将一系列单元格值合并为一个单元格:

点击下载Kutools for Excel并立即免费试用!


更相关的结合行和列的文章:

  • 合并和合并行而不丢失Excel中的数据
  • 如果您应用“合并和居中”命令(“对齐”面板上的“主页”选项卡>合并和居中)命令来合并Excel中的数据行,则Excel仅将数据保留在最左上角的单元格中。 用户必须使用另一种方法将多行数据合并为一行而不删除数据。
  • 合并重复的行并求和Excel中的值
  • 在Excel中,当您具有一系列包含某些重复项的数据时,您可能总是会遇到此问题,现在您想要合并重复数据并在另一列中求和相应的值,如下面的屏幕快照所示。 您如何解决这个问题?
  • 串联的单元格忽略或跳过Excel中的空白
  • Excel的串联功能可以帮助您将多个单元格值快速组合到一个单元格中,如果所选单元格中有一些空白单元格,则此功能也将合并空白。 但是,有时候,您只想将单元格与数据连接起来并跳过空单元格,如何在Excel中完成呢?

  • 超级公式栏 (轻松编辑多行文本和公式); 阅读版式 (轻松读取和编辑大量单元格); 粘贴到过滤范围...
  • 合并单元格/行/列 和保存数据; 拆分单元格内容; 合并重复的行和总和/平均值...防止细胞重复; 比较范围...
  • 选择重复或唯一 行; 选择空白行 (所有单元格都是空的); 超级查找和模糊查找 在许多工作簿中; 随机选择...
  • 确切的副本 多个单元格,无需更改公式参考; 自动创建参考 到多张纸; 插入项目符号,复选框等...
  • 收藏并快速插入公式,范围,图表和图片; 加密单元 带密码 创建邮件列表 并发送电子邮件...
  • 提取文字,添加文本,按位置删除, 删除空间; 创建和打印分页小计; 在单元格内容和注释之间转换...
  • 超级滤镜 (将过滤方案保存并应用于其他工作表); 高级排序 按月/周/日,频率及更多; 特殊过滤器 用粗体,斜体...
  • 结合工作簿和工作表; 根据关键列合并表; 将数据分割成多个工作表; 批量转换xls,xlsx和PDF...
  • 数据透视表分组依据 周号,周几等 显示未锁定的单元格 用不同的颜色 突出显示具有公式/名称的单元格...
kte选项卡201905
  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
  • 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
  • 每天将您的工作效率提高50%,并减少数百次鼠标单击!
officetab底部
按评论排序
注释 (34)
还没有评分。 成为第一位评论!
该评论由网站上的主持人最小化
十分感谢。 我发现这非常有用。 问候, 拉加德
该评论由网站上的主持人最小化
真棒:帮助我的项目并节省了很多小时的工作......非常感谢。
该评论由网站上的主持人最小化
很好,很清晰
该评论由网站上的主持人最小化
谢谢你。 这真是一个救星! 我有一个问题。 我想合并 EAN 代码。 它在同一张纸上就像一个魅力。 但是当我从另一张纸上获取 EAN 代码时,我得到了结果:#######,########,#######,####### Where might be问题? 非常感谢
该评论由网站上的主持人最小化
您好,请详细说明您的问题。 尝试在 jaychivo 联系我#extendoffice.com。 请用@替换#。 :-)
该评论由网站上的主持人最小化
你好! 我在 A 列中有一个包含超过 23,000 个序列号的电子表格,然后每个序列号在 B 列中有一个一位数的分配编号,最后是一个个性化的应用程序编号,它同时属于 C 列中的序列号和分配的编号。看起来像这个:ABC 123456 1 1212121 987655 2 5656565 606060 1 4343434 606060 1 8989898 如何使用逗号仅组合具有相同序列号和分配编号但不同应用程序编号的数据行? 例如,我需要:606060 1 4343434、8989898 任何帮助将不胜感激!!!
该评论由网站上的主持人最小化
几天前我使用了你的 VBA 公式,效果很好。 我今天再次使用它,但我不断收到#NAME? 错误。 我已经尝试了各种各样的事情,但无法让它发挥作用。 我究竟做错了什么?
该评论由网站上的主持人最小化
您好,非常感谢您提供的有用资源!!! 请问如何修改VBA Module 以同时具有“,”和“”? 非常感谢!
该评论由网站上的主持人最小化
[quote]您好,非常感谢您提供的有用资源!!! 请问如何修改VBA Module 以同时具有“,”和“”? 非常感谢!由斯里娜[/quote] 最重要的是,如何以没有空格和逗号的方式结束列表? 那么要选择电子表格的整行作为资源,其中可能包含不同数量的列? 请帮忙,因为 Kutools 与 Mac 不兼容。 提前致谢!
该评论由网站上的主持人最小化
感谢 VBA 代码!!!!它节省了我的时间............ :-)
该评论由网站上的主持人最小化
我想合并具有以下结果的两个单元格 A 和 B = A ,B 表示 A 列空间逗号 B 列
该评论由网站上的主持人最小化
谢谢你。 这是我找到的最好的解释! 不过,我无法将其扩展到数百列。 您能否澄清您所说的“将填充手柄拖动到要应用此公式的范围内,一行中的所有单元格将用逗号组合成一个单元格”我不知道该怎么做。
该评论由网站上的主持人最小化
非常感谢..这个信息非常有帮助。
该评论由网站上的主持人最小化
我遇到了问题,单元格 G2-N2(向下数千行)需要使用逗号合并到一列,但它们之间没有空格。 但是,如果单元格为空,则需要跳过该单元格,不输入逗号。 我找不到任何帮助菜单,而且我快到最后期限了,需要这个快捷方式来处理我要导入的数千种产品。 任何和所有的帮助表示赞赏。
该评论由网站上的主持人最小化
感谢您的宏,它工作得很好!!
该评论由网站上的主持人最小化
感谢大量的 VBA 节省了我的时间....!!!
该评论由网站上的主持人最小化
我如何获得结果显示以下值: ABC 10 10 =CONCATENATE(A1,",",B1,",",C1) RESULTS 10,,10 10 20 30 =CONCATENATE(A1,",",B1," ,",C1) 结果 10,20,10 10 30 =CONCATENATE(A1,",",B1,",",C1) 结果 10,30,在两个值之间或之后显示逗号。 我不想要没有价值的逗号
该评论由网站上的主持人最小化
试试这个。 =SUBSTITUTE(IF(A1="","",A1&",") & IF(B1="","",B1) & IF(C1="","","," & C1)," ,,",",")
该评论由网站上的主持人最小化
合并公式很棒,除了我的一列数据是日期,并且日期必须格式化为 MM/DD/YY - 但是一旦合并,日期就会转换为十进制数字。 我无法使用公式。
该评论由网站上的主持人最小化
在我调整单元格位置后,VBA 宏运行良好,并且我能够在逗号后添加一个空格以便更好地显示数据。
该评论由网站上的主持人最小化
VBA 代码运行良好,谢谢。 我唯一的问题是它包含空白,因此我的组合输出最终看起来像这样:“test, test, , , , , , test” 我怎样才能让它排除范围内的空白单元格?
该评论由网站上的主持人最小化
如果你找到了答案,现在也请告诉我。
该评论由网站上的主持人最小化
而不是原始代码中的行:

如果 Rng.Text <> ", " 那么
OutStr = OutStr & Rng.Text & Sign


您需要添加一个“测试”来确定单元格是否为空,然后是上面添加分隔符的语句。 删除以上 2 行,然后复制以下代码,您的 COMBINE 函数将从列表中删除空白。

如果 IsEmpty(Rng.Value) = True 那么

OutStr = OutStr & ""

ElseIf Rng.Text <> ", " 然后

OutStr = OutStr & Rng.Text & Sign
该评论由网站上的主持人最小化
如何将 2 个单元格与 2 个独立单元格格式之间的空格结合起来。 例如。 如果一个单元格是红色数字而另一个单元格有绿色数字,则应与红色和绿色数字结合。
该评论由网站上的主持人最小化
我真的很喜欢在这个网站上学习,它的内容很好。 永远不要与无生命的物体打架。 通过 PJ 奥罗克。 dfdkbafbadfkagdd
这里还没有评论
加载更多
留下你的意见
以访客身份发帖
×
评价此帖子:
0   产品特性
建议地点

关注我们

版权所有 © 2009 - extendoffice.com。 | 版权所有。 供电 ExtendOffice。 | 网站地图
Microsoft和Office徽标是Microsoft Corporation在美国和/或其他国家的商标或注册商标。
受Sectigo SSL保护