snasui.com ยินดีต้อนรับ ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
Sub ListStudentNameToPDF() 'พิมพ์บัญชีรายชื่อนักเรียนทั้งหมด
Dim sFolderPath As String
Dim Path As String
Dim FName As String
On Error Resume Next
sFolderPath = Sheet2.Range("K1").Value & "SchoolLunch"
If Dir(sFolderPath, vbDirectory) = "" Then
MkDir sFolderPath
End If
sFolderPath = Sheet2.Range("K1").Value & "SchoolLunch" & "\" & "PDF"
If Dir(sFolderPath, vbDirectory) = "" Then
MkDir sFolderPath
End If
FName = ActiveSheet.Range("B10")
Application.DisplayAlerts = False
Application.ScreenUpdating = False
If MsgBox("คุณต้องการพิมพ์บัญชีรายชื่อนักเรียนทั้งหมด ใช่หรือไม่?", 36, "ยืนยันการสั่งพิมพ์") = 6 Then
For i = 2 To Application.Count(Sheet2.Range("F2:F" & Sheet2.Range("F" & Rows.Count).End(xlUp).Row)) + 1
Sheet2.Range("E2").Value = Sheet2.Range("F" & i).Value
Sheet3.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sFolderPath & "\" & Sheet3.Range("B10").Value
Next i
ActiveWorkbook.FollowHyperlink Address:=sFolderPath, NewWindow:=True
Else
MsgBox "คุณได้ยกเลิกการสั่งพิมพ์", vbInformation, "Cencel Printing"
End If
Sheet2.Range("E2").Value = 4
Application.ScreenUpdating = True
End Sub
'Other code
If MsgBox("คุณต้องการพิมพ์บัญชีรายชื่อนักเรียนทั้งหมด ใช่หรือไม่?", 36, "ยืนยันการสั่งพิมพ์") = 6 Then
For i = 2 To Application.Count(Sheet2.Range("F2:F" & Sheet2.Range("F" & Rows.Count).End(xlUp).Row)) + 1
Sheet2.Range("E2").Value = Sheet2.Range("F" & i).Value
If Sheet3.Range("D8").Value <> "" Then
Sheet3.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sFolderPath & "\" & Sheet3.Range("B10").Value
End If
Next i
ActiveWorkbook.FollowHyperlink Address:=sFolderPath, NewWindow:=True
Else
'Other code