我已经制作了多个excel文件试图解决这个问题。我已经达到了这一点,并且仍然出现此函数的错误:
Sub graph1()
ActiveChart.Name = IChart
MsgBox "done"
End Sub
这是在启用宏的excel文件中,在工作表1上的数字数据在A1到F754的范围内,并且在工作表2上有(手动制作的)平滑散点图。
尝试运行此代码(选择图表以使ActiveChart生效)我收到错误:
运行时错误' 7':内存不足
请帮忙,我需要能够为图表命名,以便我可以使用VBA宏进行.Axis格式更改,重新调整图表大小以及其他一些内容。
答案 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