使用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姓名=>王五姓别=>男地址=>南京
上一篇
下一篇