日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Python使用win32com.client的方法示例_python

作者:robin2022 ? 更新時間: 2023-05-21 編程語言

在網上搜索的時候,經常看到兩種打開方式: dispatch和EnsureDispatch

import win32com.client as win32
xl_dis = win32.Dispatch("Excel.Application")
import win32com.client as win32
xl_ens = win32.gencache.EnsureDispatch("Excel.Application")

兩種方式的差別參見:

https://stackoverflow.com/questions/50127959/win32-dispatch-vs-win32-gencache-in-python-what-are-the-pros-and-cons

#創建

#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()

原文鏈接:https://www.cnblogs.com/robin2022/p/16317499.html

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新