4

我正在使用 Python 来自动化一些 Excel 数据分析。我已经掌握了大部分基础知识,但我似乎找不到任何打电话SetSourceDataSeriesCollection成功的方法。我已经阅读了这篇文章(以及所有其他文章)并发现它充满希望,但它似乎与我的经验不符。我在 Windows 机器上使用 Python 2.7.3,32 位。

有人成功使用过SetSourceDataSeriesCollection

这是我正在使用的代码的简化版本和错误:

chart = chartSheet.ChartObjects(1)

chart.SetSourceData(chartSheet.Range("A1:B2"),PlotBy=2) 

PlotBy我因此而指定,但我怀疑它是否重要

和错误:

raise AttributeError("'%s' object has no attribute '%s'" % (repr(self), attr))

AttributeError: '<win32com.gen_py.Microsoft Excel 14.0 Object Library.ChartObject instance at 0x68557120>' object has no attribute 'SetSourceData'

啊。我应该研究 IronPython 吗?(我发现了 MSDN 文档中指定的其他一些东西,但似乎在 Python 中不起作用……但现在不记得了。)

4

1 回答 1

2

这条线

chart = chartSheet.ChartObjects(1)

实际上并不返回一个Chart对象(quote

此方法不等同于 Charts 属性。此方法返回嵌入式图表;Charts 属性返回图表工作表。使用 Chart 属性返回嵌入图表的 Chart 对象。

这个我没试过,但听起来好像你需要引用chart属性,可能是这样的:

chartObject = chartSheet.ChartObjects(1)
chart = chartObject.chart
于 2013-05-01T10:06:52.273 回答