ApplyFilter to Combo box
กระทู้เก่าบอร์ด อ.สุภาพ ไชยา

 366   4
URL.หัวข้อ / URL
ApplyFilter to Combo box

ขอคำแนะนำด้วยค่ะ ปัญหามีดังนี้ 
 
 สร้าง Form บันทึกการยืม-คืน หนังสือ (single form) 
1.  ต้องการทำ unbound text box เพื่อรับข้อความที่ต้องการจะกรอง ให้ใส่ได้แบบ wildcard ได้ด้วย 
2. จากนั้นทำ combo box  และแสดงข้อมูลเฉพาะที่กรองแล้วจาก unbound text box ด้านบนนั่น 
3. สามารถเลือกรายการที่ต้องการได้จาก combo box  
4. และเมื่อเลือกแล้ว ให้ update ไปใส่ไว้ใน text box  (field รหัสหนังสือ) ที่จัดเตรียมไว้ให้ 
 
ขอบพระคุณค่ะ

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

1 @R01420
ควรจะใช้ Combox Box แทน Text Box ที่แสดง รหัสหนังสือ เลยครับ ไม่รู้ว่าจะมีเหตุผลอย่างอื่นด้วยหรือไม่ที่ค่อยเลือกรหัสหนังสือจาก Text Box อีกที่หนึ่ง ส่วน Combox Box ก็ใช้ให้ SQL เป็นตัวกำหนด Row Source โดยใช้ Where clause ซึ่งรับค่ามาจาก Unbound Text Box อีกที่หนึ่ง โดยอาจใช้กับเหตุการณ์ AfterUpdate ดังนี้ Private Sub UnboundText_AfterUpdate() Me.Combo0.RowSource = "Select ชื่อฟีลด์เป้าหมาย From ชื่อตารางเป้าหมาย Where ชื่อฟีลด์ที่ต้องการกรอง Like '*" & Me.UnboundText & "*'" Me.Combo0.Requery End Sub ลองดูตัวอย่างการใช้ Where clause ที่ http://agserver.kku.ac.th/basiceng/FindRecordDB.zip
2 @R01421
ค่ะ เข้าใจแล้วค่ะ คิดว่าไม่น่าจะมีปัญหาอะไรแล้ว จะปฏิบัติตามทุกอย่างค่ะ ขอบคุณค่า
3 @R05962
จากโค้ดตัวอย่างนี้

Private Sub cmdSearchNow_Click()
txtSearch_AfterUpdate
End Sub

Private Sub txtSearch_AfterUpdate()
Dim strSearch As String
strSearch = Me.txtSearch
Me.frmSubForm.SetFocus
If Me.cmbField = "" Or IsNull(Me.cmbField) Then
DoCmd.FindRecord strSearch, acAnywhere, False, acSearchAll, False, acAll
Else
DoCmd.GoToControl Me.cmbField
DoCmd.FindRecord strSearch, acAnywhere, False, acSearchAll, False, acCurrent
End If
End Sub

ถ้าเราต้องการจะให้แสดงเฉพาะผลที่ได้จากการพิมพ์ใน txtSearch
เช่น พิมพ์คำว่า R
ก็จะแสดงเป็นแถวแบบ DataSheet
R1
R2
R3
และถ้าไม่พบ ก็มี Msg "ไม่พบข้อมูล" ขึ้นมาแสดง
เราจะต้องเพิ่มเติมในโค้ดตรงไหนบ้างครับ หรือมีวิธีการอย่างไร

แนะนำด้วยครับ





4 @R05965
ผมจำได้ว่า อ. BADMan ได้เคยทำตัวอย่างไว้ให้ในกระทู้เก่าๆ นะครับ ผมจำไม่ได้แล้วว่าอยู่กระทู้ไหน ให้ค้นด้วยคำว่า BADMan ดูนะครับ อยู่ประมาณปี 45 ครับ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.0415s