Cara Print Mail Merge ke PDF per File ( How to Print Mail Merge To Individual PDF)



Assalamu'alaikum Selamat pagi, siang maupun malam semuanya, pembaca setia hajriahfajar.com

Melanjutkan Part sebelum ya mengenai pemanfaatan Mail Merge, Postingan kali ini adalah akhir dari Trilogi Tema tersebut, yaitu bagaimana cara print mail merge ke pdf per file, sesuai data yang kita buat di spreadsheet atau Ms. Excel. 

Yups, mungkin sudah banyak yang tahu atau menebak, salah satu caranya ialah dengan split pdf online, namun kekurangan dari split pdf online ini adalah entah anda upload ke website manapun hasil akhirnya tetap sama, yaitu memang benar pdf yang anda upload akan ter split, terpisah menjadi beberapa file, namun nama file akan tetap sama dengan file pertama yang anda upload.

Misal file PDF yang anda ada upload itu Anda beri nama dokumen,   maka hasil akhirnya  File yang anda upload itu menjadi di dokumen 1,  dokumen 2 dan seterusnya.

Yang ingin saya jelaskan Iyalah Bagaimana cara kita print  mail merge  langsung dari Microsoft Word menjadi beberapa file PDF sesuai dengan data di  Microsoft Excel.
Salah satu caranya ialah memanfaatkan fitur   modul  visual basic di Microsoft Word.

mengenai caranya Silakan anda Simak video di bawah ini yang hanya akan muncul setelah tanggal 21 Februari 2021 ini.



Berikut coding Visual Basic yang Anda gunakan  (  tolong diketik agar pintar sekalian belajar jangan dicopas karena memang tidak bisa oke)

Option Explicit

Const FOLDER_SAVED As String = "lokasi Output Folder"
Const SOURCE_FILE_PATH As String = "Lokasi File Excel"

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.SaveAs 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

Cara penggunaannya hanya memasukan alamat output atau   folder penyimpanan di “Lokasi output folder” dan Alamat Penyimpanan file Excel beserta nama file Excel nya dan jenis filenya, Apakah XLSX ataukah xls di “   lokasi file excel”  juga mengganti “ ID”.   
Untuk lebih jelasnya silakan lihat video di atas terima kasih

wassalam warahmatullah Wabarokatuh.

Hajriah Fajar is a multi-talented Indonesian artist, writer, and content creator. Born in December 1987, she grew up in a village in Bogor Regency, where she developed a deep appreciation for the arts. Her unconventional journey includes working as a professional parking attendant before pursuing higher education. Fajar holds a Bachelor's degree in Computer Science from Nusamandiri University, demonstrating her ability to excel in both creative and technical fields. She is currently working as an IT professional at a private hospital in Jakarta while actively sharing her thoughts, artwork, and experiences on various social media platforms.

Thank you for stopping by! If you enjoy the content and would like to show your support, how about treating me to a cup of coffee? �� It’s a small gesture that helps keep me motivated to continue creating awesome content. No pressure, but your coffee would definitely make my day a little brighter. ☕️ Buy Me Coffee

2 komentar untuk "Cara Print Mail Merge ke PDF per File ( How to Print Mail Merge To Individual PDF)"

  1. Bagaimana kode VBA jika mau simpan hanya 1 record yang aktif saja?

    BalasHapus
  2. Wow, anda keren sekali bang, sangat membantu, semoga berkah ya bang

    BalasHapus

You are welcome to share your ideas with us in comments!