批量插入多个邮件合并字段

批量插入多个邮件合并字段

我有一个邮件合并文档连接到一个 excel 文件,该文件大约有 200 列和几百行。我需要将我的邮件合并文档设置为如下所示:

[code]      [type]     [amount]
[code1]     [type1]    [amount1]
[code2]     [type2]    [amount2]

等等,直到该字段重复 200 次。不必详细解释为什么我需要这样做,这是一种非常粗暴且快速的方法来合并我们想要的数据,最终我们会找到一种更优雅的方法。

我的问题是如何快速插入字段,而不用逐个选择插入字段数百次?理想情况下,我只需给它一个字段列表并让其插入所有字段,即在 excel 中使用字段名设置三列,然后将其复制并粘贴到 word 中,但 word 不会将它们识别为实际字段,并且会将 << text >> 视为纯文本而不是实际字段。

答案1

这是如何工作的?这是一个宏,因此请将其添加到文档中的模块中。

Sub add_hundreds_of_refs()
Dim myDoc As Document
Set myDoc = ActiveDocument
Dim i As Long

With myDoc
    .MailMerge.Fields.Add Range:=Selection.Range, Name:="Code"
    .MailMerge.Fields.Add Range:=Selection.Range, Name:="Type"
    .MailMerge.Fields.Add Range:=Selection.Range, Name:="Amount"
    Selection.TypeParagraph
    For i = 1 To 200
        .MailMerge.Fields.Add Range:=Selection.Range, Name:="Code" & i
        .MailMerge.Fields.Add Range:=Selection.Range, Name:="Type" & i
        .MailMerge.Fields.Add Range:=Selection.Range, Name:="Amount" & i
        Selection.TypeParagraph
    Next i
End With
End Sub

在此处输入图片描述

相关内容