[英]Sorting a pivot table with win32com using Python
我想对使用 win32com 模块和 Python 创建的 Excel pivot 表进行排序。
据我了解,我应该使用 function AutoSort() 并且根据官方文档,有四个字段,其中两个是可选的。 因此,我只指定了“Order”和“Field”字段。
AutoSort(Order=1, Field="Tot Converted Amount Due")
但是,当我运行下面的代码行时,出现错误。
wb.Sheets("pivot_table").PivotTables("pivot_table").PivotFields("Tot Converted Amount Due").AutoSort(Order=1, Field="Tot Converted Amount Due")
错误:
def AutoSort(self, Order=defaultNamedNotOptArg, Field=defaultNamedNotOptArg, PivotLine=defaultNamedOptArg, CustomSubtotal=defaultNamedOptArg):
---> 44 return self._oleobj_.InvokeTypes(1514, LCID, 1, (24, 0), ((3, 1), (8, 1), (12, 17), (12, 17)),Order
45 , Field, PivotLine, CustomSubtotal)
46
com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2146827284), None)
我究竟做错了什么?
我真的很感激任何意见或帮助。 谢谢!
我不知道这是否是您的情况,但您需要在.PivotFields("""Row field""")
中传递一个行字段。
您是否尝试过使用ascending=true
进行排序? 如https://stackoverflow.com/a/60778942/18247317
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.