所有
我想将变量cht设置为当前图表。我已经尝试了下面的代码,但由于某种原因,它在名称上添加了一个额外的“图表”。还有另一种方法吗?
Set cht = ActiveSheet.ChartObject(ActiveChart.Name)
此代码不起作用,因为它找不到具有该名称的对象。
msgbox ActiveChart.Name
当实际名称为“pvtChart1”时,产生“chart pvtChart1”。是否有另一种方法来引用活动图表?
由于我无法更改的计算机设置,我因未能正确格式化代码而道歉。感谢。
-Rik
答案 0 :(得分:1)
附加到图表名称的图表是放置此图表的工作表的名称。
您可以检索图表的名称:
MsgBox ActiveChart.Parent.Name
如果要将变量cht
设置为当前图表,则无需参考图表集合。你可以这样做:
Set cht = ActiveChart.Parent
答案 1 :(得分:0)
图表嵌入的形状也称为ChartObject。
如果你想引用图表(我怀疑),请使用:
Dim cht As Chart
Set cht = ActiveChart
如果要引用父图表对象:
Dim chtob As ChartObject
Set chtob = ActiveChart.Parent
该图表与图表对象相关,如下所示:
Dim chtob As ChartObject, cht As Chart
Set chtob = ActiveChart.Parent
Set cht = chtob.Chart