Excel 如何将形状复制到另一个工作表(而不是图片)?

Excel 如何将形状复制到另一个工作表(而不是图片)?,excel,vba,Excel,Vba,我在使用Excel VBA时遇到了一些问题(再次…) 我只想将形状(实际上是“模板”形状,具有预定义的布局)从一个工作表复制到另一个工作表 录制宏时,这是生成的VBA代码: Sheets("Layout").Select ActiveSheet.ChartObjects("CHART_TEMPLATE").Activate ActiveChart.ChartArea.Copy Sheets("Example").Select Range("A1").Sel

我在使用Excel VBA时遇到了一些问题(再次…)

我只想将形状(实际上是“模板”形状,具有预定义的布局)从一个工作表复制到另一个工作表

录制宏时,这是生成的VBA代码:

    Sheets("Layout").Select
    ActiveSheet.ChartObjects("CHART_TEMPLATE").Activate
    ActiveChart.ChartArea.Copy
    Sheets("Example").Select
    Range("A1").Select
    ActiveSheet.Paste
当然,我想去掉所有的
”。选择“
方法,以解决性能问题。因此,我不能
选择范围,也不能使用
ActiveSheet.Paste

不幸的是,
粘贴
方法只存在于
工作表
对象(如
ActiveSheet.Paste
),因此我不得不使用
范围
对象的
粘贴特殊
方法

这是我的代码:

    ThisWorkbook.Sheets("Layout").ChartObjects("CHART_TEMPLATE").Copy
    ThisWorkbook.Sheets("Example").Range("A1").PasteSpecial Paste:=xlPasteAll
但是,
PasteSpecial
方法将
形状
复制为图片。。。 当然我不想要图片,因为我必须用数据填充那些
图表

这里有人有线索吗


Thanx,

粘贴方法可以将目标作为参数。你试过这样的东西吗

ThisWorkbook.Sheets("Example").Paste Destination:=ThisWorkbook.Sheets("Example").Range("A1")

粘贴方法可以将目标作为参数。您是否尝试过类似于
ThisWorkbook.Sheets(“示例”)。粘贴目标:=ThisWorkbook.Sheets(“示例”).Range(“A1”)
?谢谢,它非常有效!我已经发布了答案,因此您可以关闭该问题。