สร้างฟอร์ม กำหนดระยะกล่องข้อความรายงาน
กระทู้เก่าบอร์ด อ.Yeadram

 706   2
URL.หัวข้อ / URL
สร้างฟอร์ม กำหนดระยะกล่องข้อความรายงาน

พอเปิดรายงาน จะมีฟอร์ม(ที่เราสร้าง) แจ้งให้ กำหนดระยะกล่องข้อความให้ห่างจากขอบกระดาษ ด้านบน กี่ ซม. ด้านซ้าย กี่ ซม. ต้องทำอย่างไรครับ

2 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R24235
- เมื่อเปิดรายงาน ให้โค้ด ตรวจสอบว่า OpenAgrs ว่ามีข้อมูลหรือไม่ ถ้าไม่มีให้ เปิดฟอร์ม "กำหนดระยะ" โดยมีเงื่อนไขห้อยไปในคำสั่งด้วย คือเอาชื่อรายงานใส่ไปใน openargs แล้วสั่งปิดรายงานไปก่อน
- ที่ฟอร์ม "กำหนดระยะ" ก็ให้ทำคล้ายกัน คือ ตรวจสอบว่า OpenArgs มีข้อมูลไหม ถ้าไม่มี ให้ปิดฟอร์มไปเลย (เลิกงาน)

แต่ถ้ามีข้อมูลใน openagrs (ซึ่งมันก็จะเป็นชื่อรายงานที่เราเพิ่งปิดไปเมื่อสักครู่นั่นแหละ) ก็ให้เปิดฟอร์ม ให้ผู้ใช้กรอก ระยะต่างๆ ตามที่คุณและผู้ใช้ต้องการได้เลย

แล้วที่ปุ่ม OK ก็ค่อยเขียนโค้ดประมาณนี้

dim rpName as string
rpName = me.Openagrs ' เอาชื่อรายงานมาจาก openagrs
dim myReport as report
docmd.OpenReport,acViewDesign,,,,"Re-Drawing" 'สั่งเปิดรายงานในมุมมองออกแบบก่อน
set myReport = reports(rpName)
' ตั้งค่าต่างๆ
myReport.controls("ชื่อtextboxในรายงาน").left = ค่าที่ผุ้ใช้กรอกเข้ามา
...
...
' สั่งปิดและเซฟ รายงานที่เราเพิ่งขยับ textbox ต่างๆ
docmd.close acReport, rpName, acSaveYes
set myReport = nothing
'แล้วค่อยสั่งเปิดรายงาน (อย่าลืมส่ง บางอย่างเข้าไปทาง openAgrs ด้วยนะ
docmd.OpenReport rpname,acViewDesign,,,,"Re-Drawing-Done"


สรุป
คือเราให้โค้ด ช่วยออกแบบรายงานได้แบบ real-time ได้ครับ
ต้องสร้างเหตุการณ์ ต้องสร้างเงื่อนไขในการเปิด-ปิด เรากำหนดให้รัดกุม แล้วมันจะไหลลื่นเองครับ ดูเหมือนมันทำงานหลายขั้นตอน แต่ถ้าซีพียู กับแรมของเครื่องที่ใช้ ดีๆ หน่อย ก็แทบจะไม่เห็นความล่าช้าหรืออะไรแว๊บๆ ด้วยซ้ำ เหมือนมันเสกได้แว๊บๆ เลยล่ะครับ
:D
2 @R24237
ขอพระคุณครับ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2957s