如何用python win32com处理excel数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用python win32com处理excel数据相关的知识,希望对你有一定的参考价值。

参考技术A #是的一般都用xlrd,xlwt,用win32com的话----from win32com.client import Dispatchapp = Dispatch ("Excel.Application")wb = app.Workbooks.Add ()wb.SaveAs('f:\myfile.xlsx')

如何用python将数据写入excel表格

用python写的测试脚本,想直接将测试结果写入excel表格中。

简单的介绍一下这两个库,先说xlrd,这个库读Excel比较方便,各种方法使用起来也挺方便:
bk = xlrd.open_workbook('your.xls')
sh = bk.sheets()[-1]
上面两句就可以打开Excel表格中的一个sheet,sheets得到的是一个list,存放所有的sheet。
sh.nrows是该sheet中的行数,知道这个后就可以使用for循环来读所有的单元格了:
sh.row(i)[3]这个就代表第i行的第4列。
再看看pyExcelerator,这个用起来有点别扭:
sheets = parse_xls('result.xls')
先打开一个表格,sheets是一个list,包含了所有表格的内容,每一项就是一个sheet,而每个sheet是二元tuple,第一个是该sheet的名字,第二个是一个dict,dict的key是一个二元组,表示单元格的坐标,如(0,0),第一行第一列。
从上面的分析中可以得出要访问Excel中第一个sheet的第一行第一列元素需要:
sheets[0][1][(0,0)]
pyExcelerator也不能得到行列数。
写文件也比较简单:
wb = Workbook()
ws = wb.add_sheet('result')
ws.write(0,0,“hello”)
wb.save('result.xls')
就不解释了:-)
写文件时需要注意直接写Unicode内容进去,而不要写编码过的内容。
本文来源于可可熊的窝 http://cocobear.info/blog , 原文地址:

参考资料:http://cocobear.info/blog/2009/01/16/use-python-deal-with-excel/

参考技术A 首先下载win2com模块,在Python 3.1下运行一下代码即可,随意转载但希望注明:CD-one的实例+注解

from win32com.client import Dispatch

xlApp = Dispatch('Excel.Application')
xlApp.Visible = 1#显示
xlApp.Workbooks.Add()#添加工作本
#在(1,1)这个单元格中填入‘Python’这个字符串
xlApp.ActiveSheet.Cells(1,1).Value = 'Python'

xlSheet = xlApp.ActiveSheet

#在(2,1)这个单元格中填入‘3’这个数字
xlSheet.Cells(2,1).Value = 3
#把A2*2这个表达式填入(4,1)这个单元格
xlSheet.Cells(4,1).Formula = '=A2*2'
#输出A1到A5的值
xlSheet.Range("A1:A5").Value
#改变(1,1)这个单元格的背景色
xlSheet.Cells(1,1).Interior.ColorIndex = 3
参考技术B python 多线程调用excel时会出错

参考资料:http://zcut.net/archives/8b8875e419dd55f1205f6646ff50eafc.html

以上是关于如何用python win32com处理excel数据的主要内容,如果未能解决你的问题,请参考以下文章

ubuntulinux下 如何用python 模拟按键

python 使用win32com 操作excel

python win32com 读取带密码的excel

如何强制python(使用win32com)创建一个新的excel实例?

Python - Win32Com - 如何从 Excel 电子表格单元格中提取超链接?

Python 基于win32com客户端实现Excel操作