2017-10-04 157 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從結果中生成圖表。沒有理由,這不能工作。 –