使用Python操作Office——EXCEL
首先介绍下office win32 com接口,这个是MS为自动化提供的操作接口,比如我们打开一个EXCEL文档,就可以在里面编辑VB脚本,实现我们自己的效果。对于这种一本万利的买卖,Python怎么能放过,它内置了对于win32 com接口的支持,我们可以方便的控制。
要想熟悉使用office win32 com接口,没有什么比MS提供的API文档更加权威了。
下面我们以操作EXCEL文档为例:
一、对Excel文件进行写入操作:
#!/usr/bin/python3 #-*-coding:utf-8-*- #导入模块 importwin32com.client #打开Excel Application=win32com.client.Dispatch("Excel.Application") #或者使用下面的方法,使用启动独立的进程: #Application=win32com.client.DispatchEx("Excel.Application") #后台运行,显示程序界面,不警告 Application.Visible=1#调试阶段建议打开 Application.DisplayAlerts=0 #新建一个文档 Workbook=Application.Workbooks.Add() #打开一个文档 Workbook=Application.Workbooks.Open("F:\\test.xlsx") #根据工作表名 Base=Workbook.Worksheets("Sheet1") #根据工作表顺序 #Base=Workbook.Worksheets(1) #接受当前工作表 #Base=Workbook.ActiveSheet #添加内容:0.0,0.5,1.0 Base.Cells(1,1).Value='Values' Base.Cells(1,2).Value=0.0 Base.Cells(1,3).Value=0.5 Base.Cells(1,4).Value=1.0 Workbook.SaveAs("F:\\test.xlsx") #关闭文档 Workbook.Close() #退出Excel Application.Quit()
相关推荐:《Python视频教程》
二、对Excel文件进行读取操作:
#!/usr/bin/python3 #-*-coding:utf-8-*- #导入模块 importwin32com.client #打开Excel Application=win32com.client.Dispatch("Excel.Application") #或者使用下面的方法,使用启动独立的进程: #Application=win32com.client.DispatchEx("Excel.Application") #后台运行,显示程序界面,不警告 Application.Visible=1#调试阶段建设打开 Application.DisplayAlerts=0 #打开一个文档 Workbook=Application.Workbooks.Open("F:\\test.xlsx") Base=Workbook.Worksheets(1) #接受当前工作表 Base=Workbook.ActiveSheet #列数 ncols=0 whileTrue: cell_value=Base.Cells(1,ncols+1).Value ifcell_value: ncols+=1 else: break #行数 nrows=0 whileTrue: cell_value=Base.Cells(nrows+2,1).Value#第一行表头 ifcell_value: forcolinrange(ncols): cell_key=Base.Cells(1,col+1).Value cell_value=Base.Cells(nrows+2,col+1).Value print(cell_key,"=>",cell_value,end="\t") print("") nrows+=1 else: break #关闭文档 Workbook.Close() #退出Excel Application.Quit()
假设test.xlsx文件中的内容如下:
则,运行以上程序输出:
序号=>1.0姓名=>张三姓别=>男地址=>北京 序号=>2.0姓名=>李四姓别=>女地址=>上海 序号=>3.0姓名=>王五姓别=>男地址=>南京
上一篇
下一篇