Python中win32com模塊的使用
更新時間:2023年01月29日 09:59:43 作者:一ye殘雪
本文主要介紹了Python中win32com模塊的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
0 前言
安裝:
pip install pypiwin32
1 Excel的API
import win32com.client as win32
#創(chuàng)建
xlApp = win32.Dispatch("Excel.Application")
xlApp = win32.DispatchEx("Excel.Application")#使用啟動獨立的進程
#后臺運行, 不顯示, 不警告
xlApp .Visible = 0;
xlApp DisplayAlerts = 0;
#打開新的文件
xlBook = xlApp.Workbooks.Open(FileName)
#創(chuàng)建新的工作簿
new_xlBook = xlApp.Workbooks.Add()
#獲取
xlSheet = xlBook.Worksheets('Sheet1')
a = xlSheet .Cell(11, 5).Value ?# (row, col) 都是從1開始
xlSheet .Cells(11, 5).Value = 2 ?# (row, col) 都是從1開始
#范圍操作
xlSheet.Range(xlSheet.Cell(11, 5), xlSheet.Cell(13, 6)).Value
#添加圖片
xlSheet.Shapes.AddPicture(picturename, 1, 1, Left, Top, Width, Height)
#copy 工作簿
xlSheet2.Copy(None, xlSheet)
#保存
xlBook.SaveAs(FileName)#另存為
xlBook.Save()
#退出
xlBook.Close()
xlBook.Quit()1.1 Excel示例
#!/usr/bin/env python?
# -*- coding:utf-8 -*-
import win32com.client as win32
if __name__ == "__main__":
? ? ''' ? ?啟動Excel程序并打開文件 ? '''
? ? app = win32.DispatchEx('Excel.Application') # 啟動獨立的進程,關閉時不影響其他文件
? ? app.Visible = False ? # 不打開excel界面
? ? app.DisplayAlerts = False ? # 不顯示警告信息
? ? wb = app.Workbooks.Open(r'D:\6_SoftwareTest\xml\empty_book.xlsx')
? ? # wb = app.Workbooks.Add() ?#創(chuàng)建新文件
? ? ''' ? ?處理worksheet ? '''
? ? ws = wb.Worksheets('Sheet1')
? ? ws.Cells(11, 5).Value = 2 ?# Cells(row,col) 先行后列 Cells(11,5)就指的是 E11單元格
? ? ws.Cells(11, 5).offset(3, 2).Value = 1 ?# E11 偏移后 到了 F13,移動(3-1,2-1)
? ? ws.Range('D10').value = 15 ?# 這里指對D10寫入數(shù)據(jù) 15
? ? ws1 = wb.Worksheets
? ? ws1.Copy(None, ws)
? ? ''' ? ?保存并關閉Excel文件,退出程序 ? '''
? ? wb.Save()
? ? # wb.SaveAs(path)
? ? wb.Close()
? ? app.Quit()2 Word的API
import win32com.client as win32
#創(chuàng)建
wdApp = win32.Dispatch("Word.Application") ? ?
wdApp = win32.DispatchEx("Word.Application")#使用啟動獨立的進程
#后臺運行, 不顯示, 不警告
wdApp.Visible = 0;
wdApp.DisplayAlerts = 0;
#打開新的文件
doc = wdApp.Documents.Open(FileName)
#創(chuàng)建新的文檔
new_doc = wdApp.Documents.Add()
#插入文字
myRange = doc.Range(0, 0)
myRange.InsertBefore("hello from Python")
#使用樣式
wordStyle = myRange.Select()
wordStyle.Style = constants.wdStyleHeading1
#正文文字替換
wdApp.Selection.Find.ClearFormatting()
wdApp.Selection.Find.Replacement.ClearFormatting()
wdApp.Selection.Find.Execute(OldStr, False, False, False, False, False, True, 1, True, NewStr, 2)
#表格操作
doc.Tables[0].Rows[0].Cells[0].Range.Text = "hello world Python"
doc.Tables[0].Rows.Add() #增加一行
#轉換為html
wc = win32.constants
wdApp.ActiveDocument.WebOptions.RelyOnCSS = 1
wdApp.ActiveDocument.WebOptions.OptimizeForBrowser = 1
wdApp.ActiveDocument.WebOptions.BrowserLevel = 0 # constants.wdBrowserLevelV4
wdApp.ActiveDocument.WebOptions.OrganizeInFolder = 0
wdApp.ActiveDocument.WebOptions.UseLongFileNames = 1
wdApp.ActiveDocument.WebOptions.RelyOnVML = 0
wdApp.ActiveDocument.WebOptions.AllowPNG = 1
wdApp.ActiveDocument.SaveAs(FileName, FileFormat = wc.wdFormatHTML)
#打印
doc.PrintOut()
#保存
doc.SaveAs(FileName)#另存為
doc.Save()
#關閉
doc.Close()
wdApp.Quit()到此這篇關于Python中win32com模塊的使用的文章就介紹到這了,更多相關Python win32com模塊內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python虛擬環(huán)境創(chuàng)建和使用方法(使用自帶的venv模塊)
這篇文章主要如何在Python中使用虛擬環(huán)境,包括創(chuàng)建、激活、使用、生成requirements.txt文件、卸載包和刪除虛擬環(huán)境,虛擬環(huán)境有助于隔離項目依賴,避免版本沖突,并便于部署,需要的朋友可以參考下2024-12-12
一起解密Python中的*args和**kwargs無限可能的函數(shù)參數(shù)
這篇文章主要來跟大家一起解密Python中的*args和**kwargs無限可能的函數(shù)參數(shù)使用的靈活性,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-06-06
淺談python中拼接路徑os.path.join斜杠的問題
今天小編就為大家分享一篇淺談python中拼接路徑os.path.join斜杠的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10
關于django python manage.py startapp 應用名出錯異常原因解析
這篇文章主要介紹了關于django python manage.py startapp 應用名出錯異常原因解析,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12
python fuzzywuzzy模塊模糊字符串匹配詳細用法
這篇文章主要介紹了使用Python完成公司名稱和地址的模糊匹配的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-08-08

