Excel 2010与2016宏兼容性问题求助:图表代码编译报错
解决Excel 2010宏编译错误:Method or Data member not Found
我之前帮同事处理过完全一样的问题!这个报错的根源很明确:
FullSeriesCollection是Excel 2013及更高版本才新增的方法,Excel 2010的对象模型里根本没有这个成员,所以运行时会触发编译错误。
快速解决方案
只需要把代码里的 FullSeriesCollection(1) 替换成Excel 2010支持的 SeriesCollection(1) 就行,修改后的代码行如下:
ActiveChart.SeriesCollection(1).Format.Line.ForeColor.ObjectThemeColor = msoThemeColorText2
这个修改是双向兼容的——在Excel 2016里也能正常运行,不需要为不同版本写两套代码。
额外建议
如果你的图表系列可能会调整顺序,用索引(比如(1))容易出错,还可以通过系列名称来引用,更稳妥:
ActiveChart.SeriesCollection("销售额").Format.Line.ForeColor.ObjectThemeColor = msoThemeColorText2
把"销售额"换成你实际的系列名称就行,这样不管系列顺序怎么变,代码都能精准定位到目标系列。
内容的提问来源于stack exchange,提问作者Darren Gillen
相关产品推荐
相关产品推荐

