枢轴使用pyExcelerator / xlrd

我怎么能创build一个工作表(在一个Excel工作簿)与数据透视表使用像pyExcelerator / xlrd python库? 我需要生成一个每日报告,其中有一个数据透视表来汇总其他工作表上的数据。 一种select是将一个空白模板复制并填充到数据中。 在这种情况下,有没有办法刷新代码的枢纽? 还有其他build议吗?

请澄清(通过编辑您的问题)“sheet”是“spreadsheet”的缩写,是指整个XLS文件,还是“worksheet”的一个缩写“worksheet”的一个组成部分。

如果通过“数据透视表”来表示Excel机制,则表示运气不佳,因为只能由Excel创build。 但是,如果您的意思是使用Python和适当的库创build自己的“交叉表”,则可以使用xlrd,xlwt和xlutils三重奏来执行此操作。

你似乎知道的xlrd。

xlwt是pyExcelerator的一个分支,修复了一些bug,并进行了一些增强。 pyExcelerator似乎不被维护。

xlutils是一个实用程序模块包。 xlutils.copy可用于从xlrd Book对象中创build一个xlwt Workbook对象,以便您可以对xlwt Workbook进行更改并将其保存到文件中。

这里是您的一站式服务,了解更多关于三个软件包的信息 ,以及一个教程,并链接到一个谷歌组/邮件列表,你可以用它来获得帮助。

试着看看这个: Python:在工作表中刷新数据透视表

如果你知道如何创build数据透视表,那么你可以使用我的代码来刷新它们

我不相信你可以使用xlwt编程添加一个数据透视表。

但是你的第二种方法(填充一个预先configuration的工作簿)似乎是合理的。

您可以使用模板工作簿中的VBAmacros来刷新数据透视表。 要自动执行此操作,请创build一个WorkBook_Open事件处理程序。

刷新数据透视表的VBA代码是:

 Sheet1.PivotTables(1).PivotCache.Refresh