将特定内容从一个Word文档复制到另一个

时间:2018-09-20 20:40:02

标签: python automation ms-word document copying

我正在尝试自动将特定内容从一个Word文档(表)复制到其他文档(表),请参见下图以了解我要执行的操作。请提出如何使其工作的建议。如果可以的话,或者使用其他任何工具,我都非常满意使用python。预先感谢。

IMAGE

1 个答案:

答案 0 :(得分:1)

如果您希望使用python,则可以使用win32com库(请参见Chun,Wesley J.核心Python应用程序编程(核心系列)第7章)。

import win32com.client as win32

随后

word = win32.gencache.EnsureDispatch('Word.Application')
my_doc=word.Documents.Open(<path and document name>)
my_doc.Visible=True ' leave out if you don't need to see the documents.

如果您使用合适的IDE,则Word对象库将具有智能感知

对于Word Table对象,您可以使用以下内容访问单元格中的文本

my_doc.Tables(n).Range.Cell(x,y).range.text

哪里

n是一个整数,代表表的序列号,范围是1到my_doc.Tables.Count

x,y是表格中单元格的行,列坐标。

如果表不统一,则必须使用cells(m)语法,其中m的范围是my_doc.Tables.Range.Cells.Count。

要从一张桌子复制到另一张桌子

my_doc2.Tables(n2).range.cell(x2,y2).range.text=my_doc1.Tables(n1).range.cell(x1,y1).range.text

my_doc2.Tables(n2).range.cells(m2).range.text=my_doc1.Tables(n1).range.cells(m1).range.text

(对于上面的m1和m2,当然会有不同的偏移量)

此外,如您所显示的,似乎存在三个目标,因此需要适当的目标表n2_1,n2_2,n2_3。