Excel取消合并单元格并填充原值有三种方法:一是定位条件+填充法,通过选中合并单元格、输入公式并批量填充后取消合并;二是Power Query法,转表后用“填充向下”修复空值再加载;三是VBA宏法,运行代码自动取消合并并填充原值。

如果您在Excel中遇到大量合并单元格,需要统一取消合并并让原合并区域内的每个单元格都填充原合并值,则需执行数据修复操作。以下是实现该目标的多种方法:
一、使用定位条件+填充法(适用于未保护工作表)
该方法利用Excel“定位条件”快速选中合并单元格区域,再通过快捷键向下填充原始值,确保拆分后内容不丢失。
1、按 Ctrl + G 打开“定位”对话框,点击“定位条件”。
2、在弹出窗口中选择 “合并单元格”,点击确定,此时所有合并单元格被选中。
3、在编辑栏中输入 =,然后按 方向键↑ 选中该合并区域左上角的单元格,按回车确认公式。
4、保持全部选中状态,按 Ctrl + Enter,完成公式批量填充。
5、再次全选这些单元格,右键选择“设置单元格格式”,在“对齐”选项卡中取消勾选 “合并单元格”。
二、Power Query自动展开法(适用于结构化数据表)
该方法将合并单元格视为缺失值问题,通过Power Query识别空行并向上填充,再取消合并,适合处理整列存在层级式合并的报表。
1、选中含合并单元格的数据区域,按 Ctrl + T 转为表格,确认“表包含标题”。
2、在“数据”选项卡中点击 “从表格/区域”,加载至Power Query编辑器。
3、选中需修复的列,在“转换”选项卡中点击 “填充” → “向下”,使空单元格继承上方非空值。
4、关闭并上载至新工作表,新表中已无合并单元格且内容完整。
5、如需覆盖原表,可复制新表数据,右键原区域选择 “选择性粘贴” → “数值”,再手动取消剩余合并(若存在)。
三、VBA宏一键执行法(适用于重复高频操作)
该方法通过运行自定义宏,自动遍历选定区域,取消合并并逐区域填充原始值,避免人工误操作,支持跨多列处理。
1、按 Alt + F11 打开VBA编辑器,插入新模块。
2、粘贴以下代码:
Sub UnmergeAndFill()
Dim rng As Range, cell As Range
Set rng = Selection
For Each cell In rng
If cell.MergeCells Then
cell.MergeArea.UnMerge
cell.MergeArea.Value = cell.Value
End If
Next cell
End Sub
3、返回Excel,选中待处理区域,按 F5 运行宏。
4、运行完成后,所有合并单元格已取消,且原值已填充至整个原合并区域。










