您現在的位置是:網站首頁>JAVAPython中win32com模塊的使用

Python中win32com模塊的使用

宸宸2024-03-16JAVA59人已圍觀

我們幫大家精選了相關的編程文章,網友惠鵬程根據主題投稿了本篇教程內容,涉及到Python win32com模塊、Python win32com、Python win32com模塊相關內容,已被330網友關注,如果對知識點想更進一步了解可以在下方電子資料中獲取。

Python win32com模塊

0 前言

安裝:

pip install pypiwin32 

1 Excel的API

import win32com.client as win32
#創建
xlApp = win32.Dispatch("Excel.Application")
xlApp = win32.DispatchEx("Excel.Application")#使用啓動獨立的進程
#後台運行, 不顯示, 不警告
xlApp .Visible = 0;
xlApp DisplayAlerts = 0;

#打開新的文件
xlBook = xlApp.Workbooks.Open(FileName)
#創建新的工作簿
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()  #創建新文件

    '''    処理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寫入數據 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

#創建
wdApp = win32.Dispatch("Word.Application")    
wdApp = win32.DispatchEx("Word.Application")#使用啓動獨立的進程

#後台運行, 不顯示, 不警告
wdApp.Visible = 0;
wdApp.DisplayAlerts = 0;

#打開新的文件
doc = wdApp.Documents.Open(FileName)
#創建新的文档
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模塊內容請搜索碼辳之家以前的文章或繼續瀏覽下麪的相關文章希望大家以後多多支持碼辳之家!

我的名片

網名:星辰

職業:程式師

現居:河北省-衡水市

Email:[email protected]