python win32com.client

时间:2023-03-09 21:50:32
python win32com.client

搜集的一些关于win32com.client操作office的相关用法

#创建

#word
w = win32com.client.Dispatch("Word.Application")
w = win32com.client.DispatchEx("Word.Application")#使用启动独立的进程 #excel
xlApp = win32com.client.Dispatch("Excel.Application") #后台运行, 不显示, 不警告
w.Visible = 0;
w.DisplayAlerts = 0; #打开新的文件 #word
doc = w.Documents.Open(FileName)
#new_doc = w.Documents.Add() #创建新的文档 #excel
xlBook = xlApp.Workbooks.Open(FileName)
#new_xlBook = xlApp.Workbooks.Add() #创建新的工作簿 #插入文字 #word
myRange = doc.Range(0, 0)
myRange.InsertBefore("hello from Python") #excel #使用样式
wordStyle = myRange.Select()
wordStyle.Style = constants.wdStyleHeading1 #正文文字替换
w.Selection.Find.ClearFormatting()
w.Selection.Find.Replacement.ClearFormatting()
w.Selection.Find.Execute(OldStr, False, False, False, False, False, True, 1, True, NewStr, 2) #表格操作 #word
doc.Tables[0].Rows[0].Cells[0].Range.Text = "hello world Python"
worddoc.Tables[0].Rows.Add() #增加一行 #excel #获取
_sheet = xlBook.Worksheets(sheet)
_sheet.Cell(row, col).Value #设置
_sheet = xlBook.Worksheets(sheet)
_sheet.Cells(row, col).Value = values #范围操作
_sheet = xlBook.Worksheets(sheet)
_sheet.Range(_sheet.Cell(row1, col1), _sheet.Cell(row2, col2)).Value #添加图片 #excel
_sheet = xlBook.Worksheets(sheet)
_sheet.Shapes.AddPicture(picturename, 1, 1, Left, Top, Width, Height) #copy 工作簿 sheets = xlBook.Worksheets
sheets(1).Copy(None, sheets(1)) #转换为html #word
wc = win32com.client.constants
w.ActiveDocument.WebOptions.RelyOnCSS = 1
w.ActiveDocument.WebOptions.OptimizeForBrowser = 1
w.ActiveDocument.WebOptions.BrowserLevel = 0 # constants.wdBrowserLevelV4
w.ActiveDocument.WebOptions.OrganizeInFolder = 0
w.ActiveDocument.WebOptions.UseLongFileNames = 1
w.ActiveDocument.WebOptions.RelyOnVML = 0
w.ActiveDocument.WebOptions.AllowPNG = 1
w.ActiveDocument.SaveAs(FileName, FileFormat = wc.wdFormatHTML) #打印
doc.PrintOut() #保存 #excel
xlBook.SaveAs(FileName)#另存为
xlBook.Save() #关闭 #word
#doc.Close()
w.Documents.Close(wc.wdDoNotSaveChanges)
w.Quit() #excel
xlBook.Close(SaveChange = 0)
xlBook.Quit()