mohon bantuannya, saya mau menyimpan file laporan siswa ke dalam bentu PDF
sebelumnya sudah menemukan rumus VBA untuk tombol save PDF, tapi filenya sangat banyak jika harus disimpan secara satu persatu jadi saya coba untuk mencari fomula lain yang bisa menyimpan dengan range yang diinginkan
yang saya temukan hanya formula VBA print secara berulang, nah saya coba untuk gabungkan 2 formula tersebut (save pdf & print berulang) namun karena ilmu saya cetek jadi tdk berhasil hehe
barangkali ada pencerahan
(FORMULA PERTAMA UNTUK SAVE PDF)
Option Explicit
Sub SavePDF()
'Khusus excel 2010 ke atas yang sudah support Save as PDF
Dim wsA As Worksheet
Dim wbA As Workbook
Dim strName As String
Dim strPath As String
Dim strFile As String
Dim strPathFile As String
Dim myFile As Variant
Dim lOver As Long
On Error GoTo errHandler
Set wbA = ActiveWorkbook
Set wsA = ActiveSheet
'folder penyimpanan
strPath = wbA.Path
If strPath = "" Then
strPath = Application.DefaultFilePath
End If
strPath = strPath & "\"
'nama file
strName = wsA.Range("v224").Value _
& " " & wsA.Range("w225").Value _
& " " & wsA.Range("w226").Value
strFile = strName & ".pdf"
strPathFile = strPath & strFile
'Jika nama file ada yang sama
If bFileExists(strPathFile) Then
lOver = MsgBox("Overwrite existing file?", _
vbQuestion + vbYesNo, "File Exists")
If lOver <> vbYes Then
myFile = Application.GetSaveAsFilename _
(InitialFileName:=strPathFile, _
FileFilter:="PDF Files (*.pdf), *.pdf", _
Title:="Select Folder and FileName to save")
If myFile <> "False" Then
strPathFile = myFile
Else
GoTo exitHandler
End If
End If
End If
'Save PDF di folder yang sama
wsA.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=strPathFile, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
exitHandler:
Exit Sub
errHandler:
MsgBox "Tidak bisa menyimpan file PDF"
Resume exitHandler
End Sub
'=============================
Function bFileExists(rsFullPath As String) As Boolean
bFileExists = CBool(Len(Dir$(rsFullPath)) > 0)
End Function
'=============================
(FORMULA KEDUA UNTUK PRINT BERULANG)
Sub CetakBerulang()
Application.Dialogs(xlDialogPrinterSetup).Show
With Sheet2
For i = .[A6] To .[D6]
.[A2] = "" & WorksheetFunction.Rept(0, 5 - Len(i)) & i
.PrintOut
Next
End With
End Sub
SAYA LAMPIRKAN CONTOH FILE PRINT BERULANG YANG INGIN SAYA UBAH MENJADI SAVE BERULANG