VB Code export เป็น PDF ครั้งเดียว โดยมีเงื่อนไง
Posted: Sun May 25, 2025 7:51 am
จากไฟล์ที่แนบมา
ต้องการส่งออก sheet2 ถึง sheet6 เป็น PDF ในครั้งเดียวกันหมด โดยมีเงื่อนไขว่า
หากที่ Sheet2 มีข้อมูลไม่เกิน 38 รายการ ให้ส่งออกเพียงหน้าเดียว
หากเกิน 38 รายการ ให้ส่งออก 2 หน้า
ต้องปรับ Code อย่างไรครับ
Code: Select all
Sub printpdf()
Dim sFolderPath As String
Dim FName As String
Dim fdObj As Object
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set fdObj = CreateObject("Scripting.FileSystemObject")
fdObj.CreateFolder ("C:\" & Range("A2").Value)
sFolderPath = "C:\" & Range("A2").Value
FName = Range("A1").Value & ".PDF"
' If Sheet1.Range("J1").Value > 38 Then
Sheets(Array("sheet2", "sheet3", "sheet4", "sheet5", "sheet6")).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sFolderPath & "\" & FName
Sheet1.Select
' End If
Application.DisplayAlerts = True
Application.ScreenUpdating = True
MsgBox "Print OK"
End Sub
หากที่ Sheet2 มีข้อมูลไม่เกิน 38 รายการ ให้ส่งออกเพียงหน้าเดียว
หากเกิน 38 รายการ ให้ส่งออก 2 หน้า
ต้องปรับ Code อย่างไรครับ