Excel 2013 VBA邮件合并supress分页?

时间:2016-08-08 22:36:31

标签: excel vba excel-vba

我正在尝试使用Excel VBA在Word中创建一对多合并。在Word 2013中手动运行该过程时,我已经按预期工作了该表单。

但是,当我尝试在Excel 2013中自动使用VBA时,它会以某种方式默认并为Excel电子表格中的每个新行插入分页符。以下是我在代码块后面的源代码更改的代码:

Dim cDir As String
Dim ThisFileName As String

Const WTempName = "HCCMailMerge.docx" 'This is Word Templates name
Dim NewFileName As String

NewFileName = "Testing123"

' Setup directory
cDir = ActiveWorkbook.Path + "\"
ThisFileName = ThisWorkbook.Name

'Open Word Template
Set objMMMD = objWord.Documents.Open(cDir + WTempName)
objMMMD.Activate

'Merge the data
With objMMMD.MailMerge
    .OpenDataSource _
        Name:=cDir + ThisFileName, _
        SQLStatement:="SELECT * FROM `Data$`"
    .Destination = wdSendToNewDocument
    .MainDocumentType = wdCatalog
    .Execute Pause:=False
End With

Automating Mail Merge using Excel VBA

我认为当我更改.MainDocumentType = wdCatalog时它会抑制分页符。但事实并非如此。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

您可以尝试删除maindocumenttype=wdCatalog并将主Word文档保存为目录(通过手动选择)。然后运行该宏,它将追加而没有分页符。