Activechart.name正在抛出内存不足的问题。每次都错误

时间:2015-12-21 20:34:49

标签: excel vba excel-vba

我已经制作了多个excel文件试图解决这个问题。我已经达到了这一点,并且仍然出现此函数的错误:

Sub graph1()
    ActiveChart.Name = IChart
    MsgBox "done"
End Sub

这是在启用宏的excel文件中,在工作表1上的数字数据在A1到F754的范围内,并且在工作表2上有(手动制作的)平滑散点图。

尝试运行此代码(选择图表以使ActiveChart生效)我收到错误:

  

运行时错误' 7':内存不足

请帮忙,我需要能够为图表命名,以便我可以使用VBA宏进行.Axis格式更改,重新调整图表大小以及其他一些内容。

2 个答案:

答案 0 :(得分:1)

不要将此标记为答案,因为Demetri在评论中正确回答了这一问题 他是正确的,你应该使用:

ActiveChart.Parent.Name = "ChartName"

或者您可以使用包含您姓名的变量 为什么要使用Parent属性?原因是ActiveChart指向Chart的{​​{1}}属性,您只能在ChartObject上设置Name属性。

基本上,

ChartObject

我希望这清楚。

答案 1 :(得分:1)

如何分配变量如下所示,并按照描述进行更改:

Function test()

    Dim ic As Chart

    ' Somehow assign the chart to a variable
    Set ic = ActiveChart
    ' Change the name as desired
    ic.Parent.Name = IChart
    ' Change the axes as desired
    ic.Axes(xlCategory).CrossesAt = -350

End Function