ปัญหาเรื่อง Form Order
กระทู้เก่าบอร์ด อ.สุภาพ ไชยา

 342   17
URL.หัวข้อ / URL
ปัญหาเรื่อง Form Order

คือผมอยากให้เวลาเรา พิมพ์ ID สินค้าแล้ว ชื่อของสินค้าก็จะแสดงขึ้นมาเองด้วยนะครับ ทำได้หรือป่าวแล้วทำอย่างไรครับแนะนำทีครับ เอาเป็นว่าช่องที่ใช่ใส่ ID สินค้าชื่อว่า ID_Product และเมื่อพิมพ์ ID ถูก ช่องที่แสดงชื่อสินค้าของผมชื่อ Product_Name ก็จะแสดงชื่อสินค้านั้นๆมา นะครับ ส่วน Form ผมชื่อ FrmOrder_Detail และตารางสินค้าผมชื่อ tbProducts แนะนำทีครับเดือดร้อนไม่ค่อยมีใครตอบผมเลยครับ

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

1 @R04045
ในตัวอย่างของ northwind.mdb ที่มากับ Access จะมีตัวอย่างคล้ายๆ กันนี้ในฟอร์มชื่อ Orders ครับ

หรือใช้ DLookup() ช่วยก็ได้ครับ ให้ค้นด้วยคำว่า dlookup( ดูครับ

2 @R05816
ผมลองค้นหาดูในกระทู้ Dlookup และอ่านดูรายละเอียดแต่ก็ยังทำไม่ได้
อยากรู้คำตอบของคำถามนี้จัง
3 @R05817
ตามที่อ.สุภาพบอก
1.ใส่ code นี้ที่ หลัง Event
ID_Product Lost Fogus
Product_Name .Value=DLookup("ฟิลด์ที่เก็บชื่อสินค้าในตารางtbProducts","ชื่อตารางtbProducts","[ชื่อฟิลด์ในตารางtbProductsที่เก็บ ID สินค้า]=ID_Product .Value")
รูปแบบ

Dlookup("ชื่อฟิลด์ที่ต้องการดึงข้อมูล","ตารางที่เก็บข้อมูลที่ต้องการดึง",[ฟิลด์ที่อ้างเป็น Condition]=Condition")

ถ้า Condition เป็นข้อความให้ใช้ '' แทน ""
เช่น
Dlookup("Name","tbProduct","[ID]='abc'")
ชัดและถูกต้องใหมครับ อาจารย์สุภาพ
4 @R05818
หรือลองดูตัวอย่างนี้ดูครับ...
5 @R05819
ขออนุญาตคุณฮานะ นะครับ
ผมมีปัญหาเหมือนกัน เลยขอใช้กระทู้นี้ถามท่านผู้รู้นะครับ
ขอขอบคุณท่านทั้งหลายที่ได้ให้คำแนะนำ ผมไม่อยากรบกวนท่านให้มากมาย
ผมก็เลยทดลองใช้ความพยายามทำหลายชั่วโมงแล้วยังไม่เกิดผล
ผมก็เลยแนบตัวอย่างมาเพื่อให้ท่านช่วยพิจารณาว่า ผมต้องแก้ไขตรงไหนครับ

ขอบคุณมากครับ

6 @R05820
ของคุณ nu
ต้องเขียน Event AfterUpdate ของ reg_no1 ครับ

Me.title1 = DLookup("title", "tbregister", "[reg_no]=" & Me.reg_no1)
7 @R05823
ถ้าไม่ได้ ใช้
Me.title1 = DLookup("title", "tbregister", "[reg_no]=' " & Me.reg_no1) & " ' "
8 @R05829
1.ลบคำสั่งที่คุณใส่ใน Property
2.เอาคำสั่งเดียวกันนั่นแหละไปใส่ใน Code Editer ที่ Event Text1_LostFogus

9 @R05838
ก่อนอื่นต้องขอขอบคุณ อ.สุภาพ และทุกท่านที่กรุณาให้ความช่วยเหลือครับ
ผมว่าคนที่มีปัญหาแบบนี้คงจะมีข้อมูลเพิ่มเติมครับ
..................
ผมเข้ามาดูตั้งแต่เมื่อคืนแล้วครับ แต่ยังไม่ได้ลองครับ (ทำงานเหนื่อยครับ)
เพิ่งจะได้เข้ามาดูตอนเลิกงานครับ วันนี้ทั้งวันก็อยู่กับAccess 97 นี้แหล่ะครับ(กำลังสนุกกับการพัฒนางานครับ)
..................
ทำได้แล้วครับ เป็นแนวทางที่จะพัฒนาต่อไปครับ

ขอบคุณมากครับ

** ผมเป็นแฟนพันธุ์แท้ MS Access ได้หรือยังครับ ???


10 @R05839
ลืมบอกครับว่าสำเร็จยังไง

ความคิดเห็นที่ 6 + ความคิดเห็นที่ 8
11 @R05840
คงไม่ดีนะครับที่ แสดงความคิดเห็นพร่ำพรื่อ

เรียน จารย์ Ken เจ้าของคามคิดเห็น 3 ครับ

จากข้อความที่ว่า
...............................................

ถ้า Condition เป็นข้อความให้ใช้ '' แทน ""
เช่น
Dlookup("Name", "tbProduct", "[ID]='abc'")

.........................................................

โค้ด นี้ ถ้า [reg_no] ชนิดข้อมูลเป็น Number จะใช้ได้ครับ
ที่ Event Lost Focus
Me.title1 = DLookup("title", "tbregister2", "[reg_no]=" & Me.reg_no1)

ถ้า [reg_no] ชนิดข้อมูลเป็น Text จะใช้ไม่ได้ครับ ผมเปลี่ยนตามรูปแบบที่แนะนำแล้วนะครับ ไม่มี error และก็ไม่มีข้อมูลขึ้นมาครับที่ Event Lost Focus
Me.title1 = DLookup("title", "tbregister1", "[reg_no]=' Me.reg_no'"1)
มี 2 ตารางครับ tbregister1และtbregister2

ไม่รู้ว่าผมเข้าใจ ข้อความที่ว่า"ถ้า Condition เป็นข้อความให้ใช้ '' แทน "" เช่น
Dlookup("Name", "tbProduct", "[ID]='abc'") " ถูกหรือเปล่า

ก็เลยกลับมาอีกครั้ง ขอบคุณครับ
12 @R05841
Dlookup("Name", "tbProduct", "[ID]='abc'") "
abc ไม่ได้เป็น Filed อ้างอิง
Me.title1 = DLookup("title", "tbregister1", "[reg_no]=' Me.reg_no'"1)
การใช้รูปแบบนี้หมายความว่า ให้ดึงข้อมูลที่มี Condition เป็นคำว่า Me.reg_no1 ซึ่งก็จะไม่มีข้อมูลตาม Condition ดังกล่าว
แต่ถ้าต้องการ Codition ที่มีค่าเท่ากับ Object ชื่อ Me.reg_no1 ก็ไม่ต้องใส่
''ที่แสดงว่า Condition เป๊นข้อความเหมือน abc
13 @R05842
ขอบคุณครับ อาจารย์ ken
อ่านดูก็ไม่เข้าใจ ลองทำดูหลายๆแบบก็ใช้ไม่ได้ วันนี้คงต้อง พักก่อนแล้วแหล่ะ (เดี๋ยวหัวระเบิด)
........
Me.title1 = DLookup("title", "tbregister1", "[reg_no] = 'Me.reg_no1'")
..........
Me.title1 = DLookup("title", "tbregister1", "[reg_no] = Me.reg_no1")
..........
Me.title1 = DLookup("title", "tbregister1", "[reg_no] = [Me.reg_no1]")
..........
Me.title1 = DLookup("title", "tbregister1", "[reg_no]" = Me.reg_no1)
..........
สวัสดีครับ
14 @R05850
Me.title1 = DLookup("title", "tbregister1", "[reg_no] ='" & Me.reg_no1& "'")

15 @R05855
ขอบคุณครับ คุณ moo แต่ยังใช้ไม่ได้
16 @R05857
ถ้าเป็น Form1 ใช้
Me.title1 = DLookup("title", "tbregister2", "[reg_no]=" & Me.reg_no1)
Me.year = DLookup("year", "tbregister2", "[reg_no]=" & Me.reg_no1)

ถ้าเป็น Form2 ใช้
Me.title1 = DLookup("title", "tbregister1", "[reg_no]= '" & Me.reg_no1 & "'")
Me.year = DLookup("year", "tbregister1", "[reg_no]= '" & Me.reg_no1 & "'")

จำสลับตารางหรือเปล่าครับ
17 @R05864
จริงครับ สลับตาราง สงสัยใจร้อน ตาเซ่อ

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