VBA Word复制表

时间:2011-09-08 18:30:56

标签: excel vba ms-word

提前抱歉我的英语不好,可能是一个简单的问题。 我想将Table对象复制到Dictionary中,以便稍后将其放在另一个Word文档中。所有作品都在Excel VBA中。 我试着复制表:

Dim dict As Dictionary
Dim table1 As Word.table
Set table1 = Word.Application.ActiveDocument.Tables.Item(tableNum)                                            
dict.Add "SampleText","MyText"
dict.Add "tab1", table1

之后,我关闭此文档并打开另一个文档。在其中,我尝试将数据从Dictionary插入书签:

dim prilDoc As Word.Document
...
prilDoc.Bookmarks.Item("SampleText").Range.Text=dict.Item("SampleText")    

这个(插入文本)工作正常,但我不知道,如何将Table对象放在Bookmark上,因为我不知道VBA Word对象模型。我尝试了一些方法,但找不到解决方案。我认为有两个问题:

  1. 当我将Table对象放入Dictionary时,我实际上只复制了第一个Word文档中对Table对象的引用。当我关闭此文档并尝试从Dictionary对象中删除它时,我无法使用它。在Java中我可以深入克隆对象,但我不知道如何在VBA中执行它。可能在这里必须完全采用另一种方法。

  2. 我不知道,我在新Word文档中如何正确插入Table对象。

  3. 提前致谢。

1 个答案:

答案 0 :(得分:0)

您是否尝试过打开第一个文档?在复制内容之前不要关闭它。