我有一个Word文档,其中包含一个需要用作邮件合并数据源的表。通过将单词表的数据复制到excel并将工作表用作数据源,我已经达到了我的目标。
现在我的问题是:有没有一种方法可以将单词表用作数据源(我的意思是使用单词表中的数据创建数据源)而无需调用excel?
我问这个问题是因为我需要使用word-vba宏,并且我试图避免打开excel实例。
edit
我将尝试通过以下pseudocode来阐明我的要求(我在错误的代码行中添加了“这是什么?”):
Dim mDoc As Document
Dim mTbl As Table
Set mDoc = ActiveDocument
Set mTbl = mDoc.Tables(1)
Dim mDS As MailMerge.DataSource 'What for this?
For C = 1 To mTbl.Columns.Count
'Add Fields
Dim FieldName As String
FieldName = mTbl.Cell(1, C).Range.Text
mDS.Fields.Add (FieldName) 'What for this?
'Add Values
For R = 2 To mTbl.Rows.Count
mDS.Fields(FieldName)(R) = mTbl.Cell(R, C).Range.Text 'What for this?
Next R
Next C
在Word中,以空白文档开始,然后添加一个表。在第一行中输入类别(例如,名字,姓氏等)。然后在下面的行中添加数据。然后,您应该可以使用如下语句进行连接:
ActiveDocument.MailMerge.OpenDataSource Name:="Y:\Test\Word\MailmergeSource.docx", LinkToSource:=True, SubType:=wdMergeSubTypeOther