Last active
August 8, 2019 14:21
-
-
Save rey1024/a41b04335367fc48cf3add620c6e79ec to your computer and use it in GitHub Desktop.
Generate Individual document(and converted to PDF) in MailMerge (With Deleted docx)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Option Explicit | |
Const FOLDER_SAVED As String = "C:\Users\Resika Arthana\Google Drive (resika@undiksha.ac.id)\06 Kegiatan Undiksha\0 UPT TIK 2019\ICONMNS\LOA\LOA-ICONMNS2019-" | |
Const SOURCE_FILE_PATH As String = "C:\Users\Resika Arthana\Google Drive (resika@undiksha.ac.id)\06 Kegiatan Undiksha\0 UPT TIK 2019\ICONMNS\datapaper.xlsx" | |
Sub MailMergeToIndPDF() | |
Dim MainDoc As Document, TargetDoc As Document | |
Dim dbPath As String | |
Dim recordNumber As Long, totalRecord As Long | |
Set MainDoc = ActiveDocument | |
With MainDoc.MailMerge | |
'// if you want to specify your data, insert a WHERE clause in the SQL statement | |
.OpenDataSource Name:=SOURCE_FILE_PATH, sqlstatement:="SELECT * FROM [Sheet1$]" | |
totalRecord = .DataSource.RecordCount | |
For recordNumber = 1 To totalRecord | |
With .DataSource | |
.ActiveRecord = recordNumber | |
.FirstRecord = recordNumber | |
.LastRecord = recordNumber | |
End With | |
.Destination = wdSendToNewDocument | |
.Execute False | |
Set TargetDoc = ActiveDocument | |
TargetDoc.SaveAs2 FOLDER_SAVED & .DataSource.DataFields("ID").Value & ".docx", wdFormatDocumentDefault | |
TargetDoc.ExportAsFixedFormat FOLDER_SAVED & .DataSource.DataFields("ID").Value & ".pdf", exportformat:=wdExportFormatPDF | |
TargetDoc.Close False | |
Set TargetDoc = Nothing | |
Next recordNumber | |
End With | |
On Error Resume Next | |
Kill FOLDER_SAVED & "*.docx" | |
On Error GoTo 0 | |
Set MainDoc = Nothing | |
End Sub | |
'adopted from https://learndataanalysis.org/automate-mail-merge-to-save-each-record-individually-with-word-vba/ | |
'with additional delete docx file | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment