今天遇到了需要批量拆分列并填充单元格的问题,解决方法记录下来,以示分享,
在excel365使用按 Alt + F11 打开VBA编辑器,复制以下代码:
Sub SplitAndFill_Fixed()
Dim rng As Range
Dim mergedArea As Range
Dim cellValue As Variant
' 循环处理每个合并单元格
For Each rng In Selection
If rng.MergeCells Then
' 获取合并区域
Set mergedArea = rng.MergeArea
' 保存合并单元格的值
cellValue = mergedArea.Cells(1, 1).Value
' 取消合并
mergedArea.UnMerge
' 将原值填充到整个区域
mergedArea.Value = cellValue
End If
Next rng
' 清理变量
Set mergedArea = Nothing
Set rng = Nothing
End Sub
然后关闭窗口回到excel中,选择需要处理的区域,按 Alt + F8,选择对应的宏并运行即可