python win32com 处理word 里面表格的简单方法

在处理word里面表格的时候,发现和网上的方法不太一样,也不知道是不是python版本的问题

使用win32com处理Word里面的表格时,表格的表示方法为Tables(1),括号里面的数字表示word里面的第几个表格,而且是从1开始的,不是从0.

当写Tables(0)时,提示错误  ret = self._oleobj_.InvokeTypes(0, LCID, 1, (9, 0), ((3, 1),),Index
pywintypes.com_error: (-2147352567, '发生意外。', (0, 'Microsoft Word', '集合所要求的成员不存在。', 'wdmain11.chm', 25421, -2146822347), None)。从Tables(1)开始就好了

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import win32com.client as win32
word = win32.gencache.EnsureDispatch('Word.Application')
word.Visible = 0
Ndoc = word.Documents.Add()
doc = word.Documents.Open('C:\\Users\\cch\\Desktop\\1.docx')
doc.Tables(0).Rows(1).Cells(1).Range.Text ='修改1'         #修改,原内容不保存
doc.Tables(2).Rows(2).Cells(3).Range.Text ='修改2'
doc.Tables(1).Cell(3,4).Range.InsertAfter('Some text')      #插入,原内容保留

doc.Tables(1).Cell(3,5).Range.Text =('Some text')

python win32com 处理word 里面表格的简单方法_第1张图片



python win32com 处理word 里面表格的简单方法_第2张图片

你可能感兴趣的:(python)