如何解决从excel VBA合并到pdf文件无法正确导出单元格
我正在尝试使用VBA将合并后的邮件从Excel邮件发送到单个pdf文件。
这是一个小例子:
单词“ Testdoc.docx”仅包含合并字段<< Name >>
这是VBA代码:
Sub Test()
Dim wdOutputName,wdInputName,PDFFileName As String
Dim x As Long
Dim nRows As Long
wdInputName = ThisWorkbook.Path & "\Testdoc.docx"
Const wdFormLetters = 0,wdOpenFormatAuto = 0
Const wdSendToNewDocument = 0,wdDefaultFirstRecord = 1,wdDefaultLastRecord = 3
nRows = Sheets(1).Range("A" & Rows.Count).End(xlUp).Row - 1
Dim wdDoc As Object
Set wdDoc = GetObject(wdInputName,"Word.document")
wdDoc.Application.Visible = False
For x = 1 To nRows
With wdDoc.MailMerge
.MainDocumentType = wdFormLetters
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:=False
End With
PDFFileName = ThisWorkbook.Path & "\Letter " & Sheets(1).Cells(x + 1,1) & ".pdf"
wdDoc.Application.Visible = False
wdDoc.ExportAsFixedFormat PDFFileName,17
Next x
wdDoc.Close SaveChanges:=False
Set wdDoc = Nothing
MsgBox "Succes"
End Sub
问题:
它制作3个单独的pdf文件并分别正确命名:“ Letter name1.pdf”,“ Letter name2.pdf”和“ Letter name3.pdf”。
但是,它不能正确合并合并域。所有文档仍然包含mergefield。 <<Name>>
应该分别用“ name1”,“ name2”和“ name3”代替,但这不是事实。
任何想法如何使其起作用?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。