You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何批量将Excel特定单元格内的多行内容合并为单行?

解决Excel多行内容合并为单行的方法

首先明确:你用的「合并后居中」功能是用来合并单元格的,只会保留左上角内容,根本不是合并内容的工具,批量使用当然无效。下面给你三个适合上千行数据的实用方法:

方法一:TEXTJOIN函数(Excel 2019/365适用)

适合有分组标识的场景(比如截图中相同ID对应多行内容):

  • 先把分组列(比如A列)复制到新列,通过「数据」→「删除重复值」得到唯一标识列表。
  • 在标识列表旁的单元格输入公式(假设原数据范围是A2:A1000,内容列是B2:B1000,D2是去重后的标识单元格):
    =TEXTJOIN("、",TRUE,IF($A$2:$A$1000=D2,$B$2:$B$1000,""))
    
  • 旧版Excel按Ctrl+Shift+Enter执行数组公式,365直接回车,下拉填充即可。
    注:"、"是内容分隔符,可替换为空格、逗号等你需要的符号。

方法二:VBA宏(全版本适用,批量处理高效)

适合需要自动删除原重复行的场景,请先备份数据再操作:

  • 按Alt+F11打开VBA编辑器,右键当前工作簿→「插入」→「模块」,粘贴以下代码:
    Sub MergeSameRows()
        Dim lastRow As Long, i As Long
        lastRow = Cells(Rows.Count, "A").End(xlUp).Row 'A列是分组标识列,按需修改
        '从最后一行往上遍历,避免删除行导致索引混乱
        For i = lastRow To 2 Step -1
            If Cells(i, "A").Value = Cells(i - 1, "A").Value Then
                '合并B列内容,分隔符用"、",可自行修改
                Cells(i - 1, "B").Value = Cells(i - 1, "B").Value & "、" & Cells(i, "B").Value
                Rows(i).Delete '删除重复行
            End If
        Next i
    End Sub
    
  • 点击运行按钮(绿色三角),完成后关闭编辑器即可。

方法三:Power Query(大数据量首选,无代码可视化操作)

适合上千行甚至更多数据,操作可重复、易调整:

  • 选中数据区域,点击「数据」→「从表格/区域」(弹出对话框勾选「我的表格有标题」)。
  • 在Power Query编辑器中,选中分组标识列(比如A列),点击「转换」→「分组依据」:
    • 分组依据选你的标识列,操作选「所有行」,新列名设为「合并内容」,点击确定。
  • 添加自定义列:点击「添加列」→「自定义列」,输入公式(把B列换成你要合并的列名):
    Text.Combine([合并内容][B列], "、")
    
  • 删除「合并内容」列,点击「关闭并上载」,结果会自动导入新工作表。

内容的提问来源于stack exchange,提问作者Learning_something_new

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 14:07:35