遇到运行时错误“438”对象在Excelmacros中不支持此属性或方法

我是新来的macros。 事实上这是我的第一个macros。 我正试图执行这个macros。 我正面临运行时错误。

Option Explicit Sub ScaleAxes() With ActiveChart.Axes(xlCategory, xlPrimary) .MaximumScale = ActiveSheet.Range("I17").Value .MinimumScale = ActiveSheet.Range("I18").Value .MajorUnit = ActiveSheet.Range("I19").Value End With End Sub 

基本上我的任务是,我试图根据我的表的最大值和最小值dynamic地更改折线图的x Axies值。 所以我已经使用最小和最大函数从我的表中计算最大值和最小值,并通过I17:I19传递这些值。 不知道我有多less正确的。

我相信你遇到的问题是由于你正在尝试设置不支持它们的类别轴上的最小值和最大值。 如果您将xlCategory更改为xlValue,则它应该可以工作(在具有数值轴而不是类别轴的图表上)。

码:

 Option Explicit Sub ScaleAxes() With ActiveChart.Axes(xlValue, xlPrimary) .MaximumScale = ActiveSheet.Range("I17").Value .MinimumScale = ActiveSheet.Range("I18").Value .MajorUnit = ActiveSheet.Range("I19").Value End With End Sub