VBA:使用其他名称粘贴图表

Edu*_*scu 0 excel charts vba copy-paste excel-2010

我使用VBA复制并粘贴图表。

    ActiveSheet.ChartObjects("Chart1").Activate
    ActiveChart.ChartArea.Copy

    ActiveSheet.PasteSpecial Format:="Microsoft Office Drawing Object", Link:= _
        False, DisplayAsIcon:=False
Run Code Online (Sandbox Code Playgroud)

问题是我最终得到两个具有相同名称("Chart1")的图表,并且在尝试以下方式重命名它们时:

'ActiveSheet.Shapes("Chart1").Name = CHART_NAME
Run Code Online (Sandbox Code Playgroud)

他们俩都被重命名。

如何将图表粘贴为其他名称。

dee*_*dee 5

而使用Duplicate()呢?

Dim source As ChartObject
Set source = ActiveSheet.ChartObjects("Chart1")

Dim newChart As Object
Set newChart = source.Duplicate
newChart.Name = "newChartName"
Run Code Online (Sandbox Code Playgroud)