iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python使用win32com.client的方法示例
  • 219
分享到

Python使用win32com.client的方法示例

Python使用win32com.clientPythonwin32com.client 2023-02-19 12:02:28 219人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

在网上搜索的时候,经常看到两种打开方式: dispatch和EnsuRedispatch import win32com.client as win32 xl_dis = win32

在网上搜索的时候,经常看到两种打开方式: 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()

到此这篇关于Python使用win32com.client的方法示例的文章就介绍到这了,更多相关Python使用win32com.client内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python使用win32com.client的方法示例

本文链接: https://www.lsjlt.com/news/196745.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作