相关文章推荐
大气的凳子  ·  使用Jackson ...·  2 月前    · 
眼睛小的足球  ·  Python 异步: ...·  1 年前    · 
近视的沙发  ·  Power BI 从 Dataverse ...·  1 年前    · 

Python中win32com模块的使用

作者:一ye残雪

本文主要介绍了Python中win32com模块的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
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模块内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • Python实现视频目标检测与轨迹跟踪流程详解
    Python实现视频目标检测与轨迹跟踪流程详解
    2023-01-01
  • 详解如何在PyQt5中实现平滑滚动的QScrollArea
    详解如何在PyQt5中实现平滑滚动的QScrollArea
    2023-01-01
  • Python装饰器使用方法全面梳理
    Python装饰器使用方法全面梳理
    2023-01-01
  • Python高光谱遥感影像处理问题详细分析讲解
    Python高光谱遥感影像处理问题详细分析讲解
    2023-01-01
  • Python中win32com模块的使用
    Python中win32com模块的使用
    2023-01-01
  • Python调用VBA实现保留原始样式的表格合并方法
    Python调用VBA实现保留原始样式的表格合并方法
    2023-01-01
  • Python中各类Excel表格批量合并问题的实现思路与案例
    Python中各类Excel表格批量合并问题的实现思路与案例
    2023-01-01
  • Python eval()与exec()函数使用介绍
    Python eval()与exec()函数使用介绍
    2023-01-01
  • 美国设下计谋,用娘炮文化重塑日本,已影响至中国
    美国设下计谋,用娘炮文化重塑日本,已影响至中国
    2021-11-19
  • 时空伴随者是什么意思?时空伴随者介绍
    时空伴随者是什么意思?时空伴随者介绍
    2021-11-09
  • 工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    2021-11-05
  • 2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2021-10-26
  • 电脑版 - 返回首页

    2006-2023 脚本之家 JB51.Net , All Rights Reserved.
    苏ICP备14036222号