有了研究python操作word文檔的基礎(chǔ)后,再研究python操作excel容易了很多。
實現(xiàn)的內(nèi)容
打開excel文檔
讀取表格內(nèi)容
表格插入行
向表格中填寫內(nèi)容
文檔另存為
環(huán)境
python 2.7
文件保存的編碼格式是utf-8
代碼
#模塊引用
import win32com
form win32com.client import Dispatch,DispatchEx
#打開word文檔
xlApp= Dispatch('Excel.Application')
xlApp.Visiable=1
path="c:/model.xlsx"
xlBook= xlApp.Workbooks.Open(path)
#中文路徑亂碼問題處理
path="c:/文檔.docx"
FileName=path.decode("utf8")
#讀取表格內(nèi)容
xlSheet=xlBook.Worksheets(1)#1為excel文檔中的第一個工作簿
print xlSheet.Cells(1,1).Value #行列序號從1開始
#表格插入行
#在有一行上插入一行
rangeObj = xlSheet.Range("A1")
rangeObj.EntireRwo.Insert()#當(dāng)前選中行的上面插入選中的行包含的行數(shù),此處為在第一行上插入一行
#在某一行下插入一行
#先在你運行環(huán)境中創(chuàng)建win32com常數(shù),如何創(chuàng)建參見文末創(chuàng)建win32com常數(shù)
const = win32com.client.constants
rangeObj.EntireRow.Insert(const..xlShiftDown)
#插入多行,選中多行插入多行
rangeObj = xlSheet.Range("A1:A10") #選中10行
rangeObj.EntireRwo.Insert() #插入10行
#向表格中填寫內(nèi)容
xlSheet.Cells(1,1).Value='abc'
#中文寫入亂碼處理
str = "你好"
xlSheet.Cells(1,1).Value=str.decode("utf8")
#文檔另存為
path="c:/result.xlsx"
doc.SaveAs(path)