我试图在Excel中自动缩放绘图,遗憾的是,我只是设法缩放Y轴,因为我在设置X轴的最大值时出错:
运行时错误' -2147467259(80004005)':
方法' MaximumScale'对象' Axis'失败
我有这个代码来帮助我扩展我的情节:
Option Explicit
Sub AutoScaleAxe()
With ActiveChart.Axes(xlValue, xlPrimary)
.MaximumScale = ActiveSheet.Range("E26").Value
.MinimumScale = ActiveSheet.Range("E25").Value
.MajorUnit = ActiveSheet.Range("E27").Value
End With
With ActiveChart.Axes(xlCategory, xlPrimary)
'The following line raises an error
.MaximumScale = ActiveSheet.Range("E22").Value
.MinimumScale = ActiveSheet.Range("E21").Value
.MajorUnit = ActiveSheet.Range("E23").Value
End With
End Sub
以下是我用来缩放图表的单元格:
答案 0 :(得分:0)
如果图表类型具有数字水平轴,则代码可以正常工作 - 例如散点图 - 但如果水平轴是分类的,则不行。
如果您想使用分类类型(如柱形图)显示直方图,则需要:
ActiveChart.SeriesCollection(1).Values = myrange
。答案 1 :(得分:0)
正如this帖子所解释的那样,您不能使用具有分类X轴的图表的MinimumScale,MaximumScale。
唯一可用的是TickLabelSpacing和TickMarkSpacing。或者,正如@nekomatic所解释的那样,你应该使用数字X轴。