【发布时间】:2022-07-28 05:31:42
【问题描述】:
我运行一个程序,该程序执行一系列宏来将原始数据处理成各种图表和图形。主宏依次运行大约 15 个宏。一切都在大约 50% 的时间内有效。复制我的所有图表并将它们放入一张纸的代码是瓶颈。它一半时间有效,另一半我收到以下错误:
“复制对象图表对象的方法失败。”
见下面的代码。接受任何和所有建议,我很难过!
Sub CopyCharts()
Dim Sheet_Count As Integer
Dim Target_Sheet As Worksheet
Dim i As Integer
Dim Cht As ChartObject
Sheet_Count = ActiveWorkbook.Sheets.Count
Set Target_Sheet = ActiveWorkbook.Sheets(4)
For i = 5 To 16
For Each Cht In ActiveWorkbook.Sheets(i).ChartObjects
Cht.Copy
Target_Sheet.Paste Target_Sheet.Range("D4")
Next Cht
Next i
End Sub
【问题讨论】:
-
你试过
.Worksheets而不是.Sheets吗?Sheets集合包含工作表和图表对象,因此您可能会将它们与您的代码混淆。 -
尝试在粘贴前激活工作表,这有帮助吗?只是猜测。
-
试试
Cht.Chart.Copy -
大家好,感谢 cmets。可悲的是,这些都没有解决它。有人知道复制工作簿中的所有图表并将其粘贴到特定工作表中的不同方法吗?
标签: excel vba excel-charts