复制合并的单元格使目标也成为合并的单元格
Copy merged cells making target also a merged cell
我有一个合并单元格A1:B1
我想复制那个合并的单元格,但是我想以同样的方式合并一个源单元格。
Sub Copy()
Sheet2.Range("A1").Copy
Sheet2.Range("A5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
使用此代码,我会将 A1 的值粘贴到 A5,但是 A5 不会与 B5 合并,这就是我要查找的结果。
您可以明确指定要合并的目标单元格。并且可以通过计算源单元格合并区域的行数和列数来指定合并区域。
Sub Example()
Dim Src As Range
Set Src = Range("A1")
Dim Dst As Range
Set Dst = Range("A5")
Dst.Value = Src.Value
Dst.Resize(Src.MergeArea.Rows.Count, Src.MergeArea.Columns.Count).Merge
End Sub
为了复制格式,除了上面的代码外,添加这些行:
Src.Copy
Dst.PasteSpecial xlPasteFormats
Application.CutCopyMode = False
但是由于您要复制值和格式,因此复制整个范围可能比先复制一个再复制另一个更容易:
Sub Example2()
Dim Src As Range
Set Src = Range("A1")
Dim Dst As Range
Set Dst = Range("A5")
'Copy Src to Dst
Src.Copy Dst
'Merge Dst like Src
Dst.Resize(Src.MergeArea.Rows.Count, Src.MergeArea.Columns.Count).Merge
'The first row of Dst may accidentally change height during the copy/paste
Dst.Rows(1).RowHeight = Src.Rows(1).RowHeight
End Sub
我有一个合并单元格A1:B1 我想复制那个合并的单元格,但是我想以同样的方式合并一个源单元格。
Sub Copy()
Sheet2.Range("A1").Copy
Sheet2.Range("A5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
使用此代码,我会将 A1 的值粘贴到 A5,但是 A5 不会与 B5 合并,这就是我要查找的结果。
您可以明确指定要合并的目标单元格。并且可以通过计算源单元格合并区域的行数和列数来指定合并区域。
Sub Example()
Dim Src As Range
Set Src = Range("A1")
Dim Dst As Range
Set Dst = Range("A5")
Dst.Value = Src.Value
Dst.Resize(Src.MergeArea.Rows.Count, Src.MergeArea.Columns.Count).Merge
End Sub
为了复制格式,除了上面的代码外,添加这些行:
Src.Copy
Dst.PasteSpecial xlPasteFormats
Application.CutCopyMode = False
但是由于您要复制值和格式,因此复制整个范围可能比先复制一个再复制另一个更容易:
Sub Example2()
Dim Src As Range
Set Src = Range("A1")
Dim Dst As Range
Set Dst = Range("A5")
'Copy Src to Dst
Src.Copy Dst
'Merge Dst like Src
Dst.Resize(Src.MergeArea.Rows.Count, Src.MergeArea.Columns.Count).Merge
'The first row of Dst may accidentally change height during the copy/paste
Dst.Rows(1).RowHeight = Src.Rows(1).RowHeight
End Sub