สอบถามการใช้ combo Filter มากกว่า1รายการ หรือ การใส่ filter sort แต่ละ column



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

08 มี.ค. 61 , 12:10:05
อ่าน 782 ครั้ง

prajak

จากรูปตัวอย่าง ผมรบกวนสอบถามครับ ใน combo หากเราต้องการเลือกมากกว่า1รายการเพื่อค้นหา สามารถทำได้หรือเปล่าครับ หรือถ้าไม่ได้ เราสามารถกำหนด sort filter ให้แต่ละcolumn ใน form view ได้หรือเปล่าครับ คล้ายกับใน excel หรือในมุมมอง แบบ data sheet


 

08 มี.ค. 61 , 12:25:10
ตอบกลับ #1

OddyWriter

ถ้าเปิดฟอร์มในมุมมอง Datasheet สามารถกำหนด Filter ได้ครับ
กินร้อน ช้อนตัวเอง จานใครจานมัน ออกนอกบ้านใส่หน้ากากอนามัยหรือหน้ากากผ้า
 
โพสต์นี้ได้รับคำขอบคุณจาก: prajak

08 มี.ค. 61 , 12:41:28
ตอบกลับ #2

pizza_p

Private Function FilterOut()
Dim stCriteria As String

stCriteria = IIf(IsNull(Me.[Style No.]), "", "[Style No.] = '" & Me.[Style No.] & "' AND ") & _
                 IIf(IsNull(Me.Buyer), "", "[Buyer] = '" & Me.Buyer & "' AND ") & _
                 IIf(IsNull(Me.[OD#]), "", "[OD#] = '" & Me.[OD#] & "' AND ") & _
                 IIf(IsNull(Me.Currency), "", "[Currency] = '" & Me.[Currency] & "' AND ") & True

Me.SubFormName.Form.Filter = stCriteria
Me.SubFormName.Form.FilterOn = True

End Function

ใน Combobox ทุกอันในช่อง AfterUpdate ให้ใส่ = FilterOut() หรือจะ call FilterOut ใน Sub AfterUpdate event ก็ได้

ปล. พวกชื่อฟิลด์หรือคอนโทรลต่างๆ ให้ตรวจสอบกับชื่อที่ใช้จริงก่อนนะครับ

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

08 มี.ค. 61 , 12:51:08
ตอบกลับ #3

prajak

ถ้าเปิดฟอร์มในมุมมอง Datasheet สามารถกำหนด Filter ได้ครับ
ผมไม่สามารถที่จะเปลี่ยนไปใช้มุมมองแบบ data sheet ได้แล้วครับ ด้วยเหตุผลหลายๆอย่างครับ เรื่องของการใช้งานและการแสดงผล จึงจำเป็นต้องใช้แบบ form view ครับ

 

08 มี.ค. 61 , 12:55:09
ตอบกลับ #4

prajak

Private Function FilterOut()
Dim stCriteria As String

stCriteria = IIf(IsNull(Me.[Style No.]), "", "[Style No.] = '" & Me.[Style No.] & "' AND ") & _
                 IIf(IsNull(Me.Buyer), "", "[Buyer] = '" & Me.Buyer & "' AND ") & _
                 IIf(IsNull(Me.[OD#]), "", "[OD#] = '" & Me.[OD#] & "' AND ") & _
                 IIf(IsNull(Me.Currency), "", "[Currency] = '" & Me.[Currency] & "' AND ") & True

Me.SubFormName.Form.Filter = stCriteria
Me.SubFormName.Form.FilterOn = True

End Function

ใน Combobox ทุกอันในช่อง AfterUpdate ให้ใส่ = FilterOut() หรือจะ call FilterOut ใน Sub AfterUpdate event ก็ได้

ปล. พวกชื่อฟิลด์หรือคอนโทรลต่างๆ ให้ตรวจสอบกับชื่อที่ใช้จริงก่อนนะครับ
ผมหมายถึง สมมุติในช่อง Buyer สามารถเลือกได้มากกว่า1รายการครับ เช่น เลือก BENSHERMAN,BOLO,MC อะไรประมาณนี้อะครับ

 

08 มี.ค. 61 , 16:26:30
ตอบกลับ #5

OddyWriter

ต้องใช้ List Box ครับ ถึงจะเลือกหลายรายการได้
กินร้อน ช้อนตัวเอง จานใครจานมัน ออกนอกบ้านใส่หน้ากากอนามัยหรือหน้ากากผ้า
 

08 มี.ค. 61 , 18:28:20
ตอบกลับ #6

TTT

ผมเคยทำคลิปตอบคำถามแนวๆนี้ ไม่รู้ว่าพอช่วยเป็นแนวทางได้หรือไม่นะครับ ลองดูแล้วกัน
ฐานข้อมูลเป็นเรื่องใกล้ตัว ใครๆก็ทำฐานข้อมูลเองได้นะครับhttp://www.youtube.com/c/AccessCreator link
 
โพสต์นี้ได้รับคำขอบคุณจาก: chaoclub

08 มี.ค. 61 , 21:03:52
ตอบกลับ #7

prajak

ผมเคยทำคลิปตอบคำถามแนวๆนี้ ไม่รู้ว่าพอช่วยเป็นแนวทางได้หรือไม่นะครับ ลองดูแล้วกัน

ดูแล้วยังไม่ใช่ครับอาจารย์ คือต้องการตัวกรอง เหมือนแบบ data sheet หรือแบบ excel ที่มีกรองแต่ละcolumn ประมาณนั้นครับ

 

08 มี.ค. 61 , 22:50:50
ตอบกลับ #8

ปิ่นณรงค์

VDO นี้น่าตรงตามที่ต้องการครับ

เป็นการใช้ Combobox คู่กับ Listbox ครับ VDO มีหลาย Part นะครับ เขาสอนตั้งแต่เริ่มสร้าง จนเสร็จสิ้นเลย อธิบายละเอียดมาก
ผมว่า คำสั่งมันเยอะไป เลยให้ทดลองทำเองเลยน่าจะดีกว่าครับ
« แก้ไขครั้งสุดท้าย: 09 มี.ค. 61 , 03:13:14 โดย Newbies »
:love: :grin:
 


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