วิธีการตั้งค่าพื้นที่การพิมพ์โดยใช้ vba (พร้อมตัวอย่าง)
คุณสามารถใช้ไวยากรณ์ต่อไปนี้ใน VBA เพื่อตั้งค่าพื้นที่พิมพ์และแสดงตัวอย่างก่อนพิมพ์ก่อนที่จะพิมพ์แผ่นงานจริง:
Sub SetPrintArea()
With Sheets("Sheet1")
.PageSetup.PrintArea = Selection.Address
.PrintPreview
End With
End Sub
มาโครนี้จะตั้งค่าพื้นที่พิมพ์เป็นช่วงของเซลล์ที่เลือกในปัจจุบันในแผ่นงานที่เรียกว่า Sheet1 จากนั้นจะแสดงตัวอย่างก่อนพิมพ์
หมายเหตุ : หากคุณต้องการพิมพ์ช่วงที่เลือกโดยไม่ต้องดูตัวอย่าง ให้แทนที่ .PrintPreview ด้วย .PrintOut ในแมโคร
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: วิธีการตั้งค่าพื้นที่การพิมพ์โดยใช้ VBA
สมมติว่าเรามีแผ่นงานต่อไปนี้ใน Excel พร้อมข้อมูลเกี่ยวกับผู้เล่นบาสเก็ตบอลหลายคน:
เราสามารถสร้างแมโครต่อไปนี้เพื่อระบุพื้นที่การพิมพ์และแสดงตัวอย่างก่อนพิมพ์ก่อนที่จะพิมพ์แผ่นงานจริง:
Sub SetPrintArea()
With Sheets("Sheet1")
.PageSetup.PrintArea = Selection.Address
.PrintPreview
End With
End Sub
สมมติว่าเราเลือกช่วงเซลล์ต่อไป A2:B7 :
เมื่อเราเรียกใช้แมโครนี้ พื้นที่พิมพ์จะถูกตั้งค่าโดยอัตโนมัติตามช่วงเซลล์ที่เลือก และหน้าต่างแสดงตัวอย่างก่อนพิมพ์ต่อไปนี้จะปรากฏขึ้น:
นี่แสดงให้เราเห็นว่าหน้าจะมีลักษณะอย่างไรหากเราพิมพ์ช่วงของเซลล์ที่เลือกในปัจจุบัน
หากเราเปลี่ยนช่วงเซลล์ที่เลือก พื้นที่การพิมพ์จะเปลี่ยนโดยอัตโนมัติ
ตัวอย่างเช่น สมมติว่าเราเลือกช่วง A1:B11 แทน:
หากเราเรียกใช้แมโครนี้อีกครั้ง พื้นที่พิมพ์จะถูกตั้งค่าโดยอัตโนมัติตามช่วงเซลล์ที่เลือกนี้ และหน้าต่างแสดงตัวอย่างก่อนพิมพ์ต่อไปนี้จะปรากฏขึ้น:
ตัวอย่างก่อนพิมพ์จะแสดงว่าเราจะพิมพ์ช่วง A1:B11 หากเราดำเนินการพิมพ์ต่อ
หมายเหตุ : คุณสามารถค้นหาเอกสารฉบับสมบูรณ์สำหรับคุณสมบัติ PrintArea ใน VBA ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ใน VBA:
VBA: วิธีพิมพ์เป็น PDF
VBA: วิธีใช้ตัวอย่างก่อนพิมพ์
VBA: วิธีสร้างโฟลเดอร์