可采用Kutools插件或VBA宏批量合并连续相同单元格:前者通过“合并相同单元格”功能自动识别并保留首值;后者用代码遍历单列区域,对连续重复值执行Merge操作,均避免数据丢失且支持居中显示。

如果您在Excel中需要将连续的相同内容单元格合并为一个单元格并居中显示,但又不希望使用常规“合并后居中”导致数据丢失或公式异常,则需采用符合数据结构逻辑的批量处理方式。以下是实现该目标的多种操作方法:
一、使用“合并相同单元格”辅助工具(第三方加载项)
部分Excel增强插件(如Kutools for Excel)提供专用于合并连续相同内容单元格的功能,可自动识别相邻行/列中重复值并执行合并,同时保留首单元格内容,避免覆盖。
1、确保已安装Kutools for Excel并启用加载项。
2、选中目标数据区域(例如A1:A100),注意该区域应为单列或单行且内容连续排列。
3、点击Kutools选项卡 → 选择“范围”组 → 点击“合并相同单元格”按钮。
4、在弹出窗口中勾选“仅合并连续相同值”,取消勾选“清除空单元格”以防误删。
5、点击“确定”,Excel将自动合并所有纵向连续的相同文本单元格,并使内容在合并区域中垂直水平居中。
二、通过VBA宏代码批量合并(原生Excel方案)
该方法不依赖外部插件,利用VBA遍历选定区域,对连续相同值进行Range.Merge操作,适用于Excel桌面版(启用宏的工作簿)。
1、按Alt+F11打开VBA编辑器,插入新模块。
2、粘贴以下代码:
Sub MergeSameCells()
Dim rng As Range, cell As Range
Dim startRow As Long, endRow As Long, i As Long
Set rng = Selection
If rng.Columns.Count > 1 Then MsgBox "请仅选择单列区域": Exit Sub
startRow = rng.Row
endRow = rng.Row + rng.Rows.Count - 1
i = startRow
Do While i
If Cells(i, rng.Column).Value = Cells(i + 1, rng.Column).Value And Not IsEmpty(Cells(i, rng.Column)) Then
startRow = i
Do While Cells(i, rng.Column).Value = Cells(i + 1, rng.Column).Value And i
i = i + 1
Loop
Range(Cells(startRow, rng.Column), Cells(i, rng.Column)).Merge
Range(Cells(startRow, rng.Column), Cells(i, rng.Column)).VerticalAlignment = xlCenter
Range(Cells(startRow, rng.Column), Cells(i, rng.Column)).HorizontalAlignment = xlCenter
Else
i = i + 1
End If
Loop
End Sub
3、返回Excel界面,按Alt+F8调出宏列表,选择“MergeSameCells”并运行。
4、在工作表中先选中单列数据区域(如A2:A50),再执行宏,程序将自动跳过空白行并仅合并有值的连续相同项。
三、借助数据透视表实现逻辑“合并显示”(无真实合并)
此方法不实际合并单元格,而是通过透视表结构天然聚合相同项,在报表视图中呈现分组效果,规避合并单元格引发的排序、筛选、公式引用等兼容性问题。
1、确认源数据区域具备规范表结构:首行为字段名,无空行空列,每列数据类型一致。
2、选中任意数据单元格,按Ctrl+T将区域转为智能表格(推荐命名表名为“Table1”)。
3、插入 → 数据透视表 → 选择“Table1”为数据源,放置于新工作表。
4、将需“合并显示”的字段(如“部门”)拖入“行”区域,其他指标字段(如“销售额”)拖入“值”区域。
5、右键透视表任意行标签 → 选择“字段设置” → 勾选“以表格形式显示”及“重复所有项目标签”,此时相同部门名称仅在首行显示,下方留空,视觉上形成层级合并效果。
四、使用条件格式+手动调整对齐模拟合并效果
当仅需视觉对齐而无需真正合并时,可通过统一字体、边框与对齐方式,使相同内容在连续行中呈现整齐排布,避免破坏单元格结构。
1、选中目标列(如B2:B100),设置字体为“微软雅黑”,字号10,加粗关闭。
2、开始选项卡 → 对齐方式组 → 点击“垂直居中”和“水平居中”按钮,确保所有单元格对齐方式一致。
3、选中同一区域 → 开始 → 条件格式 → 新建规则 → 使用公式确定要设置格式的单元格。
4、输入公式:=B2=B1,设置格式为字体颜色设为白色、背景色设为与单元格同色,使重复值文字不可见。
5、再次选中区域 → 设置所有单元格顶部边框为细线,底部边框为空白,仅在首个相同值所在行显示下边框,形成区块分隔感。










