ฟอร์มเลือกข้อมูลหลายๆ แถว



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

04 มิ.ย. 63 , 09:22:25
อ่าน 192 ครั้ง

thanapol.w

ฟอร์มเลือกข้อมูลหลายๆ แถว
« เมื่อ: 04 มิ.ย. 63 , 09:22:25 »
ต้องการสร้างฟอร์มสำหรับการเลือกข้อมูลจาก ฟอร์มหลายแถว เพื่อนำข้อมูลไปทำงานต่อ  ผมลองเอาเช็คบล็อกไปใส่ เวลากดมันเลือกทั้งหมดเลย

 

04 มิ.ย. 63 , 10:06:59
ตอบกลับ #1

Un

: ฟอร์มเลือกข้อมูลหลายๆ แถว
« ตอบกลับ #1 เมื่อ: 04 มิ.ย. 63 , 10:06:59 »
ต้องสร้างฟิลด์ ลองรับ คอนโทลด้วยครับ

 
โพสต์นี้ได้รับคำขอบคุณจาก: thanapol.w

04 มิ.ย. 63 , 10:48:57
ตอบกลับ #2

thanapol.w

: ฟอร์มเลือกข้อมูลหลายๆ แถว
« ตอบกลับ #2 เมื่อ: 04 มิ.ย. 63 , 10:48:57 »
ถ้าต้องการทำแบบนี้ แต่ไม่จำเป็น ต้องเป็น กล่องให้ติ๊กก็ได้ มีวิธีการอื่นๆ ไหม ครับ ที่ไม่ต้องสร้างฟิลล์

 

04 มิ.ย. 63 , 11:52:53
ตอบกลับ #3

สันติสุข

  • แฟนพันธุ์แท้ไท.Access
  • *
  • กระทู้: 466
  • พลังขอบคุณ: 418

  • ขึ้น 15 ค่ำเดือน 8 แสดงปฐมเทศนา

    • ดูรายละเอียด

: ฟอร์มเลือกข้อมูลหลายๆ แถว
« ตอบกลับ #3 เมื่อ: 04 มิ.ย. 63 , 11:52:53 »
ผมใช้วิธีสร้าง Public Array Variable X ในโมดูล M เพื่อเก็บสถานะการเลือกเมื่อเปิดฟอร์ม F โดย X จะถูกกำหนดให้มีจำนวน element ทั้งหมดเท่ากับค่าสูงสุดของ ID  แล้วเชื่อม check box (chkX) ที่ใช้แสดงสถานะการเลือกเข้ากับฟังก์ชั่น XStatus( ) ที่อ่านค่าจาก X อีกทีนึง

แต่เนื่องจาก check box นี้ผูกกับฟังก์ชั่น จึงทำได้แค่แสดง ไม่สามารถคลิกเปลี่ยนแปลงได้ จึงสร้าง combo box command button (btnX) เพื่อรองรับการคลิกเลือกเปลี่ยนสถานะแทน โดยกำหนดให้แสดงเป็นประเภทโปร่งใส (Transparent property = True) และวางขี่อยู่บน chkX เพื่อให้ผู้ใช้รู้สึกเหมือนใช้งาน chkX เท่านั้น  เมื่อคลิกก็จะไปสลับค่าในตัวแปร X ตาม element ที่อ้างอิงด้วยค่า ID และอัพเดตการแสดงของ chkX อีกที  และเมื่อจะนำการเลือกไปใช้ เช่นนำไปออกรายงาน ก็ให้กำหนดเงื่อนไขของคิวรี่หรือ Filter ของรายงานให้มีเงื่อนไข Xstatus(ID) = TRUE

ข้อดีคือ
- ไม่ต้องสร้างฟิลด์หรือเทเบิลชั่วคราวเพื่อเก็บสถานะการเลือก

ข้อด้อยคือ
- ใช้ได้กับฟอร์มที่มี ID เป็นตัวเลข
- ใช้ได้กับฟอร์มที่แสดงเพียงอย่างเดียว ถ้ามีการป้อนเรคอร์ดใหม่ลงในฟอร์มด้วย ต้องแก้ไขโปรแกรมเพิ่มเติม
- สถานะการเลือก ต้องใช้เวลานิดหน่อยในการแสดง ถ้าจำนวนบรรทัดยิ่งมาก อาจจะใช้เวลามากขึ้น
- ต้องเขียนโค้ดเพื่อจัดการ
« แก้ไขครั้งสุดท้าย: 05 มิ.ย. 63 , 22:43:00 โดย สันติสุข »
ช่วยพกถุงผ้า/ถุงพลาสติกใช้แล้วไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 
โพสต์นี้ได้รับคำขอบคุณจาก: sjs, thanapol.w

08 มิ.ย. 63 , 19:18:52
ตอบกลับ #4

thanapol.w

: ฟอร์มเลือกข้อมูลหลายๆ แถว
« ตอบกลับ #4 เมื่อ: 08 มิ.ย. 63 , 19:18:52 »
ขอบคุณท่านอาจารย์มากๆ ครับ พอดีผมไปค้นเจอ อีกหนึ่่งวิธีครับ ใช้ได้กับ IN ครับ

 

08 มิ.ย. 63 , 19:29:33
ตอบกลับ #5

PNR

: ฟอร์มเลือกข้อมูลหลายๆ แถว
« ตอบกลับ #5 เมื่อ: 08 มิ.ย. 63 , 19:29:33 »
ขอบคุณท่านอาจารย์มากๆ ครับ พอดีผมไปค้นเจอ อีกหนึ่่งวิธีครับ ใช้ได้กับ IN ครับ

วิธีนี้ต่อยอดได้อีกเยอะเลยครับ
 ใช้วิธีกำหนดให้เก็บ สตริงหลังจากติ๊กเลือกแล้ว
 ใช้ replace เป็น ID,ID ไปเรื่อยๆ แล้วนำไปใส่กับ IN เยี่ยมครับ

:meaw: :grin: :shout:
 
โพสต์นี้ได้รับคำขอบคุณจาก: thanapol.w


บอร์ดเรียนรู้ Access สำหรับคนไทย