【发布时间】:2015-02-13 19:00:05
【问题描述】:
如果我在 Excel 中使用 VBA 制作具有多个系列的折线图,并且两个系列的数据非常相似,以至于它们的图表系列线部分重叠,最后写的在前面写的。
在Worksheet_Change 事件中,我希望能够根据更改数据的用户操作在前面的图表系列线之间来回切换。我可以在不删除并重新创建图表的情况下这样做吗?
这是我识别系列线的方式,例如这里是系列 2:
Sheet1.ChartObjects("MyChart").Chart.SeriesCollection(2)
获取TypeName 会返回Series。我在帮助中看到Series,但没有关于其属性和方法的信息。我在对象浏览器中看不到Series(我在 Excel 2007 上)。我能够在上下文帮助下拉列表中获得属性和方法列表,但我没有在下拉列表中看到任何有希望的内容。
那么,我可以将图表系列放在前面/将其发送到后面,而不删除和重新创建图表吗?
【问题讨论】:
-
试试
Sheet1.ChartObjects("MyChart").Chart.SeriesCollection(2).PlotOrder = 1 -
@chancea :谢谢,但更改 PlotOrder 属性不会影响哪个系列行在另一个前面/后面。
-
嗯,对我有用,look here
-
@chancea 解决方案也适用于我。我使用 Excel 2013。从我的角度来看,Excel 2007 有一些无法解释的错误。
-
你可以试试
Select这个系列,然后Selection.PlotOrder = 1。 99.9% 的情况下,我建议不要这样做,但我在使用图表/系列及其格式时看到了一些时髦的情况,这些情况似乎只有在您首先选择对象时才有效。值得一试,正如他们所说:没有冒险,没有收获。
标签: vba excel charts excel-charts