【发布时间】:2017-05-27 21:46:54
【问题描述】:
我正在开发一个宏来取消合并给定范围内的合并单元格,然后重新合并未合并的原始合并单元格。我一直在努力确定如何存储最初未合并的单元格列表,以便宏可以重新合并那些确切的单元格。电子表格中合并的行每周都在变化。
Sub MergeUnmerge()
'
Mergeunmerge Macro
'
Dim mergelist As Range
Dim celllist As Range
For Each cell In Range("A1:S49")
If cell.MergeCells = True Then
Set mergelist = celllist
cell.UnMerge
End If
Next
For Each cell In mergelist
Range("celllist").Merge
Next
结束子
【问题讨论】:
-
您应该考虑使用集合或数组来存储您的信息,以便在您完成主要任务后对其进行处理。即将每个合并区域的地址(Range.MergeArea.Address)添加到集合中,然后您可以取消合并所有单元格,完成任务然后合并集合中每个项目的单元格
-
我用一个经过测试的工作解决方案编辑了我的答案。