【发布时间】:2014-11-26 02:40:33
【问题描述】:
我在 Excel VBA 宏中有一个作业
axscty = ax.ScaleType
这给出了错误:“对象'Axis'的方法'ScaleType'失败”。
我发现消息来源指出这是 Excel 2007 中的一个错误。其他人在设置 .ScaleType 时发现了错误,例如,
.ScaleType = xlLinear
我找到了错误的原因:我有一个带有数据系列的辅助 Y 轴。如果我将这些系列分配给主 Y 轴并删除辅助轴,错误就会消失。
有谁知道当有第二个Y轴时如何避免错误?
【问题讨论】:
-
你是如何定义你的变量“ax”的?
-
@JonPeltier - 我现在没有带有图表和代码的示例工作簿(这是一篇旧帖子,尽管我仍然感兴趣)。很可能我做了类似
Dim ax as Axis、Set ax = myChart.Axes(xlValue)的事情。我看到的唯一选择是:1)使用xlCategory而不是xlValue,2)添加第二个可选参数AxisGroup,如xlPrimary或xlSecondary。你能指出这对答案可能产生的影响吗? -
也许我曾经知道这件事。从 2007 年到 2013 年,这显然是一个错误。显然,ScaleType 属性仅适用于值 (Y) 轴,而不是类别 (X) 轴,即使该轴是 XY 散点图中的数值轴。
-
@JonPeltier - ScaleType 属性(用于获取和设置)被识别为类别(X)轴,只要没有辅助 Y 轴(我不知道如果有会发生什么次要 X 轴)。
-
我刚刚在 Excel 2016 中做了一些测试。如果辅助轴上没有系列,即使辅助轴已被删除,ScaleType 也适用于主 X 轴。大概这个错误发生在 Excel 2007 到 2016 中。