Cara Membuat Tombol Macro Excel Jadi File PDF Masal
Daftar Isi
Salam sehat dan bahagia untuk sahabat GTK semuanya.
Pada artikel kali ini saya ingin berbagi tutorial tentang excel.
Cara membuat tombol macro pada excel untuk membuat file pdf secara masal
berdasarkan nomor urut data.
Ini merupakan kelanjutan dari postingan sebelumnya:
Cara Membuat Tombol Print Macro Dari Nomor Sampai Nomor pada Aplikasi
Excel
A. File PDF Sebagai Dokumen Digital
Di lingkungan sekolah, dokumen digital seperti file PDF menjadi solusi praktis
untuk mengelola administrasi secara efisien. Guru dan tenaga kependidikan
dapat membuat berbagai dokumen seperti sertifikat, surat tugas, undangan,
hingga laporan siswa dalam format digital yang seragam dan profesional. Dengan
memanfaatkan Excel dan tombol macro untuk mencetak PDF secara massal,
pekerjaan yang sebelumnya memakan waktu dan tenaga kini bisa diselesaikan
hanya dengan satu klik, tanpa perlu mencetak fisik satu per satu.
Penggunaan file PDF sebagai dokumen digital juga memudahkan distribusi melalui
email, grup WhatsApp, atau platform belajar daring. Dokumen bisa langsung
dikirim ke siswa, orang tua, atau pihak terkait tanpa harus bertatap muka,
sehingga sangat membantu dalam era pembelajaran digital atau saat kegiatan
administrasi dilakukan dari jarak jauh. Selain hemat kertas, penggunaan
dokumen digital ini juga membiasakan warga sekolah untuk beradaptasi dengan
teknologi dan manajemen dokumen yang lebih modern.
B. Tanda Tangan Digital pada File PDF.
Dokumen PDF dengan tanda tangan elektronik dari
Balai Sertifikasi Elektronik (BSrE) merupakan bentuk dokumen digital
resmi yang memiliki kekuatan hukum di Indonesia. BSrE adalah unit dari Badan
Siber dan Sandi Negara (BSSN) yang memberikan layanan sertifikat elektronik
kepada instansi pemerintah, termasuk sekolah. Tanda tangan digital ini bukan
sekadar gambar tanda tangan, melainkan berupa enkripsi khusus yang menjamin
keaslian dokumen dan identitas penandatangan. Saat dibuka di aplikasi pembaca
PDF seperti Adobe Acrobat Reader, dokumen akan menampilkan status "Signed and
all signatures are valid" jika sah dan belum diubah.
Di lingkungan pendidikan, penggunaan dokumen PDF bertanda tangan BSrE sangat
membantu dalam modernisasi administrasi. Sekolah bisa menggunakannya untuk
berbagai kebutuhan seperti sertifikat pelatihan, surat tugas, ijazah digital,
dan surat keputusan kepala sekolah. Proses distribusi menjadi lebih cepat dan
efisien karena dokumen dapat dikirim secara daring tanpa perlu mencetak fisik.
Selain itu, dengan tanda tangan digital yang tersertifikasi, dokumen-dokumen
tersebut lebih mudah dipercaya dan diakui secara hukum, baik oleh dinas
pendidikan maupun lembaga lain.
Layanan tanda tangan digital dari BSrE dapat diakses secara gratis oleh
instansi pendidikan negeri melalui portal resmi] (https://bsre.bssn.go.id).
Untuk memanfaatkannya, sekolah harus mendaftarkan akun dan mengikuti prosedur
verifikasi institusi. Setelah akun aktif, dokumen PDF yang telah disiapkan
bisa diunggah dan diberi tanda tangan elektronik secara online. Penggunaan
layanan ini mendorong sekolah menuju transformasi digital yang aman, efisien,
dan sesuai regulasi pemerintah terkait keabsahan dokumen elektronik.
C. Cara Membuat Tombol Macro Excel Menjadi File PDF Secara Masal
Dari hal tersebut diatas kiranya penting juga untuk mengetahui bagaimana cara
agar ketika tombol di klik maka akan otomatis print save to pdf secara
masal.
Ini akan saya terapkan pada aplikasi Cetak Transkrip Nilai Ijazah yang mana
ketika tulisan ini dibuat sudah mulai berlaku E-Ijazah Digital yang boleh
dilakukan tanda tangan secara elektronik.
Baik kita langsung saja menuju langkah-langkah untuk membuat tombolnya.
1. Siapkan dulu kolom tempat untuk menuliskan nomor urut yang akan di
cetak/simpan ke pdf disini saya buat di Cells AO7 dan AS7.
2. Cari sebuah logo icon pdf untuk dijadikan tombol yang bisa di klik, cari
saja di internet sudah banyak pilihan.
3. Klik kanan gambar icon yang telah kita masukan, pilih "Assign macro"
3. Klik kanan gambar icon yang telah kita masukan, pilih "Assign macro"
4. Copy dan masukan script macro berikut ini:
Sub Picture4_Click()
Dim Awal As Integer, Akhir As Integer, i As Integer
Dim FolderPath As String
Dim fDialog As FileDialog
Dim NamaFile As String
' Minta user pilih folder
Set fDialog = Application.FileDialog(msoFileDialogFolderPicker)
With fDialog
.Title = "Pilih Folder untuk Simpan PDF"
If .Show <> -1 Then
MsgBox "Proses dibatalkan.", vbExclamation
Exit Sub
End If
FolderPath = .SelectedItems(1)
If Right(FolderPath, 1) <> "\" Then FolderPath = FolderPath & "\"
End With
' Ambil nilai awal dan akhir
Awal = Range("AO7").Value
Akhir = Range("AS7").Value
If Awal <= Akhir And Awal >= 1 Then
Application.ScreenUpdating = False
For i = Awal To Akhir
With Sheets("Transkrip Nilai SD")
.Range("AI7").Value = i
' Ambil nama dari M12
NamaFile = Trim(.Range("M12").Value)
' Hapus karakter tidak valid
NamaFile = Replace(NamaFile, "\", "_")
NamaFile = Replace(NamaFile, "/", "_")
NamaFile = Replace(NamaFile, ":", "_")
NamaFile = Replace(NamaFile, "*", "_")
NamaFile = Replace(NamaFile, "?", "_")
NamaFile = Replace(NamaFile, """", "_")
NamaFile = Replace(NamaFile, "<", "_")
NamaFile = Replace(NamaFile, ">", "_")
NamaFile = Replace(NamaFile, "|", "_")
' Tambahkan nomor urut di depan
NamaFile = Format(i, "000") & "_" & NamaFile
' Simpan ke PDF
.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=FolderPath & NamaFile & ".pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
End With
Next i
' Buka folder hasil cetakan
Shell "explorer.exe """ & FolderPath & """", vbNormalFocus
MsgBox "Selesai menyimpan ke PDF. Folder terbuka.", vbInformation
Else
MsgBox "Cek lagi Nomor yang akan dicetak...!!!!", vbCritical, "Cetak Halaman"
End If
End Sub
5. Penjelasan Kode
Sub Picture4_Click()
Dim Awal As Integer, Akhir As Integer, i As Integer
Dim FolderPath As String
Dim fDialog As FileDialog
Dim NamaFile As String
' Minta user pilih folder
Set fDialog = Application.FileDialog(msoFileDialogFolderPicker)
With fDialog
.Title = "Pilih Folder untuk Simpan PDF"
If .Show <> -1 Then
MsgBox "Proses dibatalkan.", vbExclamation
Exit Sub
End If
FolderPath = .SelectedItems(1)
If Right(FolderPath, 1) <> "\" Then FolderPath = FolderPath & "\"
End With
' Ambil nilai awal dan akhir
Awal = Range("AO7").Value
Akhir = Range("AS7").Value
If Awal <= Akhir And Awal >= 1 Then
Application.ScreenUpdating = False
For i = Awal To Akhir
With Sheets("Transkrip Nilai SD")
.Range("AI7").Value = i
' Ambil nama dari M12
NamaFile = Trim(.Range("M12").Value)
' Hapus karakter tidak valid
NamaFile = Replace(NamaFile, "\", "_")
NamaFile = Replace(NamaFile, "/", "_")
NamaFile = Replace(NamaFile, ":", "_")
NamaFile = Replace(NamaFile, "*", "_")
NamaFile = Replace(NamaFile, "?", "_")
NamaFile = Replace(NamaFile, """", "_")
NamaFile = Replace(NamaFile, "<", "_")
NamaFile = Replace(NamaFile, ">", "_")
NamaFile = Replace(NamaFile, "|", "_")
' Tambahkan nomor urut di depan
NamaFile = Format(i, "000") & "_" & NamaFile
' Simpan ke PDF
.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=FolderPath & NamaFile & ".pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
End With
Next i
' Buka folder hasil cetakan
Shell "explorer.exe """ & FolderPath & """", vbNormalFocus
MsgBox "Selesai menyimpan ke PDF. Folder terbuka.", vbInformation
Else
MsgBox "Cek lagi Nomor yang akan dicetak...!!!!", vbCritical, "Cetak Halaman"
End If
End Sub
Dim Awal As Integer, Akhir As Integer, i As Integer
Dim FolderPath As String
Dim fDialog As FileDialog
Dim NamaFile As String
' Minta user pilih folder
Set fDialog = Application.FileDialog(msoFileDialogFolderPicker)
With fDialog
.Title = "Pilih Folder untuk Simpan PDF"
If .Show <> -1 Then
MsgBox "Proses dibatalkan.", vbExclamation
Exit Sub
End If
FolderPath = .SelectedItems(1)
If Right(FolderPath, 1) <> "\" Then FolderPath = FolderPath & "\"
End With
' Ambil nilai awal dan akhir
Awal = Range("AO7").Value
Akhir = Range("AS7").Value
If Awal <= Akhir And Awal >= 1 Then
Application.ScreenUpdating = False
For i = Awal To Akhir
With Sheets("Transkrip Nilai SD")
.Range("AI7").Value = i
' Ambil nama dari M12
NamaFile = Trim(.Range("M12").Value)
' Hapus karakter tidak valid
NamaFile = Replace(NamaFile, "\", "_")
NamaFile = Replace(NamaFile, "/", "_")
NamaFile = Replace(NamaFile, ":", "_")
NamaFile = Replace(NamaFile, "*", "_")
NamaFile = Replace(NamaFile, "?", "_")
NamaFile = Replace(NamaFile, """", "_")
NamaFile = Replace(NamaFile, "<", "_")
NamaFile = Replace(NamaFile, ">", "_")
NamaFile = Replace(NamaFile, "|", "_")
' Tambahkan nomor urut di depan
NamaFile = Format(i, "000") & "_" & NamaFile
' Simpan ke PDF
.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=FolderPath & NamaFile & ".pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
End With
Next i
' Buka folder hasil cetakan
Shell "explorer.exe """ & FolderPath & """", vbNormalFocus
MsgBox "Selesai menyimpan ke PDF. Folder terbuka.", vbInformation
Else
MsgBox "Cek lagi Nomor yang akan dicetak...!!!!", vbCritical, "Cetak Halaman"
End If
End Sub
6. Silahkan dicoba tombolnya, jika berhasil maka akan otomatis membuatk atau menyimpan dalam format PDF di folder yang telah dipiliha kemudian akan otomatis menggunakan nama file sesuai nama siswa.
7. Namun menurt saya hasilnya kurang sesuai ketika di print langsung, terutama garis tipis-tipis menjadi tebal.
C. Penutup
Demikianlah tutorial yang bisa saya bagikan tentang bagaimana cara membuat tombol macro Excel menjadi file PDF secara masal.
Jika ada pertanyaan, silahkan sampaikan melaui kotak komentar.
Semoga bermafaat.
Wassalamualaikum Wr. Wb.
Semoga bermafaat.
Wassalamualaikum Wr. Wb.
Sumber: Pengalaman Pribadi dibant ChatGPT
Posting Komentar
2. Semua komentar kami baca, namun tidak semua dapat dibalas harap maklum.
3. Beri tanda centang pada "Beri tahu saya" untuk pemberitahuan jika komentar Anda telah kami balas.