背景: 我创建了一个Excel模板,用于邮件将字段合并到Word文档中,并生成5个不同的字母,这些字母将发送给一位客户。
团: 使Word VBA代码运行自动邮件合并,并提示在特定目录中保存(或自动保存)文件名,该文件名源自邮件合并字段。
即
(唯一标识符)+首字母名称+日期 保存在第一个字母文件夹
(唯一标识符)+第二个字母的名称+日期 保存在第二个字母文件夹
等。
问题: 我无法弄清楚如何指定目录或如何插入邮件合并字段作为文件名的一部分。
以下是我的代码
Sub MailMerge()
With ActiveDocument.MailMerge
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:=False
End With
With Dialogs(wdDialogFileSummaryInfo)
.Title = "Letter1Draft" & Format(Now(), "mmddyyyy") & ".doc"
.Execute
End With
' Then this!
With Dialogs(wdDialogFileSaveAs)
.Show
End With
End Sub
答案 0 :(得分:0)
以下代码选择目录。 它不允许您插入邮件合并字段作为文件名。
Sub AllSectionsToSubDoc()
Dim x As Long
Dim Sections As Long
Dim Doc As Document
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set Doc = ActiveDocument
Sections = Doc.Sections.Count
For x = Sections - 1 To 1 Step -1
Doc.Sections(x).Range.Copy
Documents.Add
ActiveDocument.Range.Paste
ActiveDocument.SaveAs (Doc.Path & "\" & x & ".pdf")
ActiveDocument.Close False
Next x
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub