2017-10-04 113 views
0

我想创建一个程序,它可以自动执行Excel报告,包括各种颜色的图表。该程序需要能够读取excel数据集。基于这个数据集,程序然后必须创建报告页面和图表,然后导出到Excel文件以及PDF文件。自动化excel报告和图表 - Python xlsxWriter/xlswings或Ruby axlsx/win32ole

我已经做了一些研究,似乎这是可能的使用python与熊猫 - xlsxWriter或xlswings以及Ruby宝石 - axlsx或win32ole。

哪个是用户友好且易于学习的替代方案?有什么优点和缺点?是否还有其他选择我应该考虑(我想避免VBA - 因为这是目前制作报告的方式)?

任何反应和意见表示赞赏。谢谢!

+0

我想你可以使用任何一种语言。如果你最终使用Ruby,绝对使用[axlsx](https://github.com/randym/axlsx),它非常简单(比win32ole更容易)。 –

回答

0

如果您已经有VBA 为您的项目工作,那么将其翻译成Ruby + WIN32OLE可能是您工作代码的最快途径。在VBA中你可以做的任何事情都可以在Ruby中实现(如果你发现某些你不能做的事,请在这里发帖寻求帮助)。

我更喜欢通过OLE使用Excel,因为我知道Excel 生成的文件在我打开它的任何地方都可以使用。我没有使用axlsx,但我确定这是一个很好的项目。我只是不相信每次都会生成有效的Excel文件。

+0

谢谢你查询你的答案。这是否意味着OLE在Excel中运行图表?这就是我想要避免的 - 因为数据集太大,宏需要永远运行。我不想让Excel处理数据,我只想将结果显示在Excel中。 – SueGunther

+0

我的建议是将现有的VBA“移植”到Ruby中。如果当前代码需要“永久”运行,那么Ruby + WIN32OLE将不会更好。但是,您可以修改代码以在Ruby中运行数据集计算,然后使用OLE从结果中生成图表。没有理由,这不能工作。 –