EXCEL TOOLS
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
[code]
และปิดด้วย [/code]
ตัวอย่างเช่น [code]dim r as range[/code]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)Code: Select all
Sub Printrang()
Dim Print_Area As String
Sheets("รายงาน").Select
Print_Area = Range("b1", Range("b" & Rows.Count).End(xlUp).Offset(0, 6)).Address
ActiveSheet.PageSetup.PrintArea = Print_Area
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ThisWorkbook.Path & "\" & Range("F1").Value & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, OpenAfterPublish:=True
End Sub
Code: Select all
Sub SetPrintAreaSetPrintAreaBeforePrint()
Dim i As Integer
Dim lng As Long
lng = Rows.Count
i = Range("B" & lng).End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = "$A$2:$G$" & i
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ThisWorkbook.Path & "\" & Range("F1").Value & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, OpenAfterPublish:=True
End Sub
Code: Select all
'Other code
Dim lng As Long
lng = Rows.Count
i = Range("B" & lng).End(xlUp).Row
Do
i = i - 1
Loop Until Range("b" & i).Value <> ""
ActiveSheet.PageSetup.PrintArea = "$A$2:$G$" & i
'Other code
ขอบคุณครับ ได้ผลลัพธ์ตามต้องการครับsnasui wrote: ↑Mon May 16, 2022 7:02 am ตัวอย่างการปรับ Code ครับ
Code: Select all
'Other code Dim lng As Long lng = Rows.Count i = Range("B" & lng).End(xlUp).Row Do i = i - 1 Loop Until Range("b" & i).Value <> "" ActiveSheet.PageSetup.PrintArea = "$A$2:$G$" & i 'Other code