สอบถามเรื่องการแบ่งคำหน่อยครับ
กระทู้เก่าบอร์ด อ.Yeadram

 1,037   3
URL.หัวข้อ / URL
สอบถามเรื่องการแบ่งคำหน่อยครับ

ผมสร้างกล่องไว้ 1 กล่อง เพื่อที่จะเอาไว้ใช้คีย์ข้อมูลเพื่อทำการค้นหา
ตอนนี้ที่ผมทำคือสามารถค้นหาได้เพียงแค่ ประโยคเดียวไม่สามารถเว้นวรรคได้
แต่ทาง user ที่ออฟฟิสต้องการให้เป็นเหมือนแบบตอนค้นหาใน google search
โดยแยกออกเป็นคำๆได้โดยแบ่งตามคำที่เว้นวรรค



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

1 @R16343
ใช้ Like *คำค้นหา* หรือเปล่าครับ
ควรแสดงคำสั่งที่ใช้มาด้วยครับจะได้ตอบได้ตรงจุด
2 @R16360
คือหมายถึงบนฟอร์ม เมื่อใส่คำใน Textbox สำหรับรับคำที่ต้องการกรอง เช่น
A B ก็หมายถึงให้แสดงเรคคอร์ดที่มีอักษร A หรือ B อยู่ในฟิลด์นั้นใช่หรือเปล่าครับ หากใช่ ลองดูตัวอย่างนี้นะครับ

ตารางชื่อ Table1
----------
aName
----------
A
B
C
C
E
-----------

สร้างฟอร์มขึ้นมาโดยดึงข้อมูลจาก Table1
Textbox สำหรับค้นหาคำชื่อ Text1
ใส่โค๊ดในเหตุการณ์ดังนี้:

    If Me.Text1 & "" = "" Then
        Me.Filter = ""
        Me.FilterOn = False
    Else
        Dim NControl As String, TTT As String
        NControl = "Table1.aName Like '*"
        TTT = Me.Text1
        If Me.Text1 Like "* *" Then
            TTT = Replace(TTT, " ", "*' OR " & NControl)
        End If
        Me.Filter = NControl & TTT & "*'"
        Me.FilterOn = True
    End If


ประมาณนี้ครับ
- หลักการณ์ก็คือหากมีวรรคใน Text1 ก็ให้เปลี่ยนเป็นเงื่อนไข OR *คำหลังวรรค*
- สมมุติจากคำที่คีย์เป็น A B C ก็จะกลายเป็นคำสั่ง
"Table1.aName Like '*A*' OR Table1.aName Like '*B*' OR Table1.aName Like '*C*'"
แทนที่จะเป็น
"Table1.aName Like '*A B C*'"

ปรับใช้ดูครับ
3 @R16364
ขอบคุณมากๆเลยครับ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2913s