python win32操作excel(pywin32操作excel)

为什么要用Python处理数据?

①快。之前发送数据日报都是从系统中导出数据,然后填充到基础表格中,展示表格里面的公式自动计算出数据。用过Excel的小伙伴都了解,很多公式(或者数组公式)或者大的基础数据,都会造成Excel的卡顿或者死机,,利用Python一般不会出现这种情况。

②顺畅。发数据的流程中"导出数据"的过程已经用Python解决(利用requests)。现在需要把Python导出的数据,写进自己设定的Excel表中。然后后期用itchat自动把数据发送到特定的微信群中。

为什么选择win32com

优点:语言基本上与VBA一致,如果碰到不懂的地方,可以用宏的方式去查看VBA代码

确定:必须在windows操作系统上面使用,程序出问题报错基本上看不懂。

我为什么要用这个?碰巧

如何安装win32com

win32com下载地址:https://sourceforge.net/projects/pywin32/files/

下载过来操作安装即可

python win32操作excel(pywin32操作excel)

pywin安装界面

win32com简单使用方法

引用模块

import win32com.client as win32

from PIL import ImageGrab #用于获取复制的图片

读取表格

1、获得Excel

excel = win32.Dispatch('Excel.Application') #获取Excel

2、获得工作薄

wb = excel.Workbooks.open('D:article_datatest.xlsx')

3、获得工作表

ws = wb.Worksheets('Sheet1')

4、结果输出

python win32操作excel(pywin32操作excel)

结果展示

填充数据

c_column = [20,30,20,30,40,50,35,45]

d_column = [15,31,22,15,16,40,34,89]

ws.Range('C2').value = c_column[0]

结果输出

python win32操作excel(pywin32操作excel)

结果展示

也可以可以用函数快速处理数据

python win32操作excel(pywin32操作excel)

函数填充数据

结果输出

python win32操作excel(pywin32操作excel)

结果展示

对完成率进行降序排序

ws.Range('A2:D9').Sort(Key1= ws.Range('B2'),Order1 = 2,Orientation=1)

结果展示

python win32操作excel(pywin32操作excel)

结果展示

保存为图片

ws.Range('A1:D10').CopyPicture()

ws.Paste(ws.Range('G1'))

结果展示

python win32操作excel(pywin32操作excel)

结果展示

把图片保存到本地

ws.Shapes('图片 1').copy()

img = ImageGrab.grabclipboard()

img.save('D:article_data图片1.png')

结果展示

python win32操作excel(pywin32操作excel)

结果展示

关闭表格

wb.close()

所有代码展示

python win32操作excel(pywin32操作excel)

操作代码

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论