使用ChartObjects

时间:2015-09-30 17:50:25

标签: excel vba excel-vba

我有一个关于在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':对象不支持此属性或方法

有人知道为什么看起来图表需要激活才能调整轴吗?

1 个答案:

答案 0 :(得分:2)

.Chart声明的末尾附近添加With

With Worksheets("DurationByDate").ChartObjects("DurationByDateChart").Chart.Axes(xlValue)