VBA 复制粘贴导致形状相乘

时间:2021-07-20 06:02:28

标签: excel vba

以下代码将名为“模板”的工作表中的第一行复制到工作簿中所有其他工作表的第一行。

模板应该只是复制行的源而不是目标。

模板表的第一行包含值、形状和带有指定宏的命令按钮。所有都需要复制到所有工作表。

这似乎奏效了,但是过了一会儿我发现每张纸上有数百个相同形状/按钮堆叠在一起。源工作表“模板”也以同样的方式受到影响。

如何排除“模板”作为目标并防止形状/按钮在所有工作表上成倍增加?

Sub UpdateHeaderRow()

    Dim ws As Worksheet
    Dim HeaderRow As Range
    Set HeaderRow = Worksheets("Template").Range("1:1")
    HeaderRow.Copy
    
    For Each ws In ActiveWorkbook.Worksheets
            ws.Range(HeaderRow.Address).PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _
            SkipBlanks:=False, Transpose:=False
            ws.Paste
    Next ws
    Application.CutCopyMode = False

End Sub

0 个答案:

没有答案