Page 1 of 1

คำสั่งมาโคร ในการพิมพ์เอกสาร เลือก layout ไม่ได้

Posted: Wed Jan 20, 2021 11:04 pm
by apa246
เรียน อาจารย์ และ สมาชิก ทุกท่าน

ได้ทดลองสร้าง คำสั่งมาโคร ในการพิมพ์เอกสาร ปรากฎว่า ไม่สามารถเลือก Layout ได้ตามต้องการ

เครื่องพิมพ์จะพิมพ์ตามแบบเดิมที่มีสังไว้ก่อนหน้าเท่านั้น

ตามไฟล์ที่แนบมา มีเอกสาร4หน้า ต้องการให้มีเมนูเลือก สั่งพิมพ์ได้ โดยใช้กระดาษ(A4)

แบบที่1 แบบ 4หน้า4แผ่น

แบบที่ 2 แบบ 2หน้า2แผ่น (ย่อ) โดยสามารถเลือกได้
Image[/img]
มีแนบคำสั่งที่สร้างไว้ ทั้ง2แบบแล้ว แต่ไม่สามารถ พิมพ์แบบสลับไปสลับมาได้

ต้องการทราบว่ามีโคทคำสั่ง เลือก layout โดยเฉพาะหรือไม่คะ

รบกวนอาจารย์และสมาชิกทุกท่านด้วยค่ะ
ขอบคุณล่วงหน้าค่ะ

Re: คำสั่งมาโคร ในการพิมพ์เอกสาร เลือก layout ไม่ได้

Posted: Thu Jan 21, 2021 8:18 am
by snasui
:D Excel ไม่สามารถเข้าไปจัดการ Option ของ Printer ต่าง ๆ ได้โดยตรง การจะทำเช่นนั้นสามารถเลือก Add Reference เข้ามาใช้ ซึ่ง Printer ยี่ห้อและรุ่นนั้น ๆ ต้องอนุญาตให้ทำเช่นนั้นได้ด้วย หรือผ่าน Windows API ดู Link นี้เป็นตัวอย่าง http://www.lessanvaezi.com/changing-pri ... ndows-api/ ซึ่งจะมีความซับซ้อนสำหรับมือใหม่ครับ

การกำหนดค่าการพิมพ์เป็นค่าเบื้องต้นที่ติดมากับ Program Excel เท่านั้น ส่วนการกำหนดค่าโดยละเอียดจะมากับ Driver ของ Printer รุ่นที่ติดตั้ง

ในเบื้องต้นหากต้องการกำหนดค่าที่เป็นการเฉพาะลองใช้คำสั่งเลือก Printer ขึ้นมากำหนดค่าเองก่อนจากนั้นต่อด้วยคำสั่งพิมพ์ตามปกติครับ

Code: Select all

'Other code
ActiveSheet.Shapes.Range(Array("Button 137")).Select
ActiveSheet.Shapes.Range(Array("Button 103")).Select
Application.Dialogs(xlDialogPrinterSetup).Show
'Other code

Re: คำสั่งมาโคร ในการพิมพ์เอกสาร เลือก layout ไม่ได้

Posted: Thu Jan 28, 2021 2:50 pm
by apa246
เรียน อาจารย์ที่เคารพ

ได้ทดลองใช้คำสั่ง Application.Dialogs(xlDialogPrinterSetup).Show

สั่งเลือก Printer ขึ้นมากำหนดค่าเองก่อนจากนั้นต่อด้วยคำสั่งพิมพ์

ได้ตามต้องการแล้วค่ะ

ขอบพระคุณอาจารย์มากๆค่ะ

ขออภัยด้วยค่ะ เข้ามาตอบช้าไปหน่อยค่ะ