我修改了找到的以下代码here,以便在现有的excel工作表中创建透视表:import win32com.client as win32

win32c = win32.constants

import sys

import itertools

tablecount = itertools.count(1)

def addpivot(wb,sourcedata,title,filters=(),columns=(),

rows=(),sumvalue=(),sortfield=""):

newsheet = wb.Sheets.Add()

newsheet.Cells(1,1).Value = title

newsheet.Cells(1,1).Font.Size = 16

tname = "PivotTable%d"%tablecount.next()

pc = wb.PivotCaches().Add(SourceType=win32c.xlDatabase,

SourceData=sourcedata)

pt = pc.CreatePivotTable(TableDestination="%s!R4C1"%newsheet.Name,

TableName=tname,

DefaultVersion=win32c.xlPivotTableVersion10)

for fieldlist,fieldc in ((filters,win32c.xlPageField),

(columns,win32c.xlColumnField),

(rows,win32c.xlRowField)):

for i,val in enumerate(fieldlist):

wb.ActiveSheet.PivotTables(tname).PivotFields(val).Orientation = fieldc

wb.ActiveSheet.PivotTables(tname).PivotFields(val).Position = i+1

wb.ActiveSheet.PivotTables(tname).AddDataField(wb.ActiveSheet.PivotTables(tname).

PivotFields(sumvalue),sumvalue,win32c.xlSum)

def runexcel():

excel = win32.gencache.EnsureDispatch('Excel.Application')

#excel.Visible = True

try:

wb = excel.Workbooks.Open('18.03.14.xls')

except:

print "Failed to open spreadsheet 18.03.14.xls"

sys.exit(1)

ws = wb.Sheets('defaulters')

xldata = ws.UsedRange.Value

newdata = []

for row in xldata:

if len(row) == 4 and row[-1] is not None:

newdata.append(list(row))

rowcnt = len(newdata)

colcnt = len(newdata[0])

wsnew = wb.Sheets.Add()

wsnew.Range(wsnew.Cells(1,1),wsnew.Cells(rowcnt,colcnt)).Value = newdata

wsnew.Columns.AutoFit()

src = "%s!R1C1:R%dC%d"%(wsnew.Name,rowcnt,colcnt)

addpivot(wb,src,

title="Employees by leads",

filters=("Leads",),

columns=(),

rows=("Name",),

sumvalue="Actual hours",

sortfield=())

if int(float(excel.Version)) >= 12:

wb.SaveAs('new18.03.14.xlsx',win32c.xlOpenXMLWorkbook)

else:

wb.SaveAs('new18.03.14.xls')

excel.Application.Quit()

if __name__ == "__main__":

runexcel()

这行代码,

wb.ActiveSheet.PivotTables(tname).AddDataField(wb.ActiveSheet.PivotTables(tname).PivotFields(sumvalue),sumvalue,win32c.xlSum)

返回以下错误:

pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, u'Microsoft Excel', u'PivotFields method of PivotTable class failed', u'xlmain11.chm', 0, -2146827284), None)。

删除该行时,将生成不带任何数据字段的透视表。我做错什么了吗?

用python做透视表_使用python在Excel中创建透视表相关推荐

  1. 用python做自我介绍_用python做个自我介绍(python入门教程)_逻辑教育

    原标题:用python做个自我介绍(python入门教程)_逻辑教育 本文涉及的python基础语法为:数据类型等 数字类型 1. 字符串的拼接 我们在上一章中已经简单介绍了一下字符串的创建方式,这里 ...

  2. python实操100例乘法表_Python编程快速上手——Excel表格创建乘法表案例分析

    本文实例讲述了Python Excel表格创建乘法表.分享给大家供大家参考,具体如下: 题目如下: 创建程序multiplicationTable.py,从命令行接受数字N,在一个Excel电子表格中 ...

  3. excel图表中的直方图_如何在Microsoft Excel中创建直方图

    excel图表中的直方图 Histograms are a useful tool in frequency data analysis, offering users the ability to ...

  4. 使用python做一个闹钟_用python做了个高级闹钟 欢迎借鉴

    原标题:用python做了个高级闹钟 欢迎借鉴 音频文件放入和.py文件同级的目录下 这是简单的闹钟做法,市场上闹钟千千万万,但是自己写出来的闹钟就是不一样,不是小编我无聊,学习乐趣就是这样慢慢培养的 ...

  5. python做logistic回归_用Python做Logistic回归

    为什么写这篇文章 本人初学python,碰巧做的东西需要用一下Logistic回归,自觉这个很基础的东西应该已经有很多比较好的实现了,于是我就很自觉地问了下度娘.结果大囧==..出来的相关结果少得可怜 ...

  6. python做股票分析_利用Python进行股票投资组合分析(调试)

    pythonsp500-robo-advisor-edition Python for Financial Analyses 需要的镜像文件和数据--Robo Advisor edition. 小结 ...

  7. python做淘宝_用python做个淘宝双十一满减攻略,再也不用算算算了

    双十一还有不到10天,购物车已经快加满了,但是钱包里就这么多钱,如何用现有的钱买到更多喜欢的东西,成为我比较头疼的事,因为我已经被各种组合加法搞晕了 于是我决定用python做个双十一购物攻略,把复杂 ...

  8. 学会python做什么兼职_学会python能干嘛 学会python可以做哪些兼职?

    学会python可以干什么都希望一段感情会有结果,谁都不希望美好的爱情最后是一场痛,但是如果一开始就想着不在乎天长地久,只在乎曾经拥有"的态度,再美好的感情也不会有好的结果. 从入门级选手到 ...

  9. python做var模型_【Python金融量化】VaR系列(五):Copula模型估计组合VaR

    作者:量化小白H     Python爱好者社区专栏作者 个人公众号:量化小白上分记 前文传送门: 之前总结的大部分模型都是基于正态性的假设,但实际上,正态性假设并不非常符合金融时间序列的特征.如果从 ...

  10. 使用python做一个闹钟_用Python写一个简单地闹钟

    一.闹钟程序如下: import sys import string from time import sleep sa = sys.argv lsa = len(sys.argv) if lsa ! ...

最新文章

  1. RHEL5+ImageMagick-6.4.0-0+jmagick-6.4.0+resin 解决方案
  2. 蓝桥杯C/C++ 带分数
  3. KMP,深入讲解next数组的求解(转载)
  4. toArray()方法使用说明
  5. 过滤html标签的代码
  6. alv 刷新_钜献 | 60小时刷新你的雅思托福成绩!明早9点我们要搞事情了!
  7. MNIST手写数字识别【Matlab神经网络工具箱】
  8. python 中内置函数
  9. oracle em搭建,【oracle】手动安装EM
  10. C# 实现系统关机、注销、重启、休眠、挂起
  11. 2 年 6 个月 11 天,外包到阿里的修仙之路!| 原力计划
  12. bzoj1218[HNOI2003]激光炸弹
  13. 【w3cschool】python3语法复习
  14. java 不同时区时间转换_Java中的时区转换小结
  15. 计算机c盘小了,电脑C盘空间太小怎么办|电脑中使用分区助手扩大C盘空间的方法...
  16. XSS 工具之 beef
  17. 编程语言和开发环境的选择
  18. 无网络环境,如何部署Docker镜像
  19. 演讲实录丨朱频频 让Bots无处不在
  20. CentOS7中使用kubeadm快速部署一套K8S集群

热门文章

  1. python安装PIL模块
  2. Joomla 插件 attachments 使用时出现不支持ZIP文件上传的错误
  3. 绕x,y轴旋转曲面面积公式推导
  4. onenote 实现不同端 秒同步
  5. Python读取文件夹图片并显示
  6. 白帽黑客和安全研究员必备——网安基础问答25例
  7. 怎么考核程序员?(文末有互动红包)
  8. 【锋迷商城】01数据库设计
  9. 下载MySQL驱动程序
  10. 远程桌面控制计算机,如何远程控制电脑?远程控制别人计算机(2种实用方法)...