我有一个关于在Excel中使用VBA修改ChartObject的轴的快速问题。
我有以下代码,它根据图表数据修改轴的最小/最大值:
Worksheets("DurationByDate").ChartObjects("DurationByDateChart").Activate
With ActiveChart.Axes(xlValue)
.MinimumScale = iDurMin - 2
.MaximumScale = iDurMax + 2
End With
这很好用,但如果我不需要,我不喜欢“激活”对象。
所以我尝试了以下代码:
With Worksheets("DurationByDate").ChartObjects("DurationByDateChart") _
.Axes(xlValue)
.MinimumScale = iDurMin - 2
.MaximumScale = iDurMax + 2
End With
此代码抛出错误:
运行时错误'438':对象不支持此属性或方法
有人知道为什么看起来图表需要激活才能调整轴吗?
答案 0 :(得分:2)
在.Chart
声明的末尾附近添加With
:
With Worksheets("DurationByDate").ChartObjects("DurationByDateChart").Chart.Axes(xlValue)