[英]pivots using pyExcelerator/xlrd
我該如何使用pyExcelerator / xlrd等python庫在數據透視表中創建工作表(在excel工作簿中)? 我需要生成一個包含樞紐分析表的每日報告,以匯總其他工作表上的數據。 一種選擇是讓我復制並填充數據的空白模板。 在這種情況下,是否有辦法從代碼中刷新數據透視表? 還有其他建議嗎?
請澄清(通過編輯問題)“工作表”是“電子表格”的縮寫,是整個XLS文件的意思,還是“工作表”的縮寫,“工作表”的組成部分。
如果用“數據透視表”表示Excel機制,那么您很不走運,因為只能由Excel創建。 但是,如果您的意思是使用Python和適當的庫創建自己的“交叉表”,則可以使用xlrd,xlwt和xlutils三者來完成此操作。
您似乎知道的xlrd。
xlwt是pyExcelerator的一個分支,已修復了一些錯誤,並進行了一些增強。 pyExcelerator似乎未得到維護。
xlutils是實用程序模塊的軟件包。 xlutils.copy可用於從xlrd Book對象創建xlwt Workbook對象,以便您可以對xlwt Workbook進行更改並將其保存到文件中。
這是您的一站式商店,以獲取有關這三個軟件包的更多信息 ,以及一個教程,以及指向可用於獲取幫助的google-group / mailing-list的鏈接。
嘗試看一下: Python:刷新工作表中的數據透視表
如果您知道如何創建數據透視表,則可以使用我的代碼刷新它們
我不相信您可以使用xlwt
編程方式添加數據透視表。
但是您的第二種方法(填充預先配置的工作簿)似乎是合理的。
您可以使用模板工作簿中的VBA宏刷新數據透視表。 若要自動執行此操作,請創建一個WorkBook_Open
事件處理程序。
刷新數據透視表的VBA代碼為:
Sheet1.PivotTables(1).PivotCache.Refresh
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.