เรียงลำดับอัตโนมัติ
กระทู้เก่าบอร์ด อ.Yeadram

 783   3
URL.หัวข้อ / URL
เรียงลำดับอัตโนมัติ

รบกวนสอบถามอาจรย์ทุกๆท่านค่ะ ต้องการรันเลขที่ ของข้อมูล

ตย. ค่ะ
ตาราง tblProgram มีฟิลด์ Docno(number) / ToolNo(TEXT) / Operate (text) / type (number)

เช่น
บันทึกใบงาน ที่ 1 Type ที่ 1 ลงตาราง

Docno     ToolNO     Operate          type
   1              P1            Drill                 1
   1              P2            flate               1

บันทึกอีกครั้งของ ใบงาน ที่ 1 แต่เป็นType ที่ 2 ลงตาราง ให้นับจำนวนของ ToolNo. เรียงลำดับไปเรื่อยๆ อ้างจากลำดับหน้าสุดของใบงานที่ 1
Docno     ToolNO     Operate          type
   1              P3            Drill                 2
   1              P4            flate               2

เลขที่ ToolNo. เรียงต่อไปเรื่อยจนกว่าจะขึ้นใบงานต่อไปแล้ว ค่อย เริ่ม ที่ P1 ใหม่ ของใบงานต่อไป

**ปล. เราสามารถกำหนด ให้ เวลาเราคีย์ ข้อมูลลงในช่อง Operate แล้ว ให้ ToolNo. ขึ้นเองอัตโนมัติได้มั้ยค่ะ

รบกวนขอคำแนะนำจากอาจารย์ทุกท่านด้วยนะค่ะ

ขอบคุณมากค่ะ

อธิบายไม่เข้าใจขออภัยด้วยน่ะค่ะ (มือใหม่จริงๆ ค่ะ )

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

1 @R23938
มีคำถามเรื่องนี้อยู่มาก ลองค้นหากระทู้เก่าคำว่า Running Number ดูครับ
2 @R23942
เรื่องของ Type ไม่น่าจะเป็นประเด็นที่สำคัญหรือต้องใส่ใจ

คุณต้องการให้ ToolNo รันลำดับต่อเนื่องภายใน DocNo เลขเดียวกันก็เท่านั้น จะ Type อะไรคุณก็รัน ToolNo ไปเรื่อยๆ อยู่ดี

ดังนั้นโจทก์ก็มีเพียงแค่ว่า จงรันลำดับของ ToolNo ไปเรื่อยๆ จนกว่าจะหมดรายการของ DocNo
หากเป็น DocNo เลขที่ใหม่จงเริ่มรันใหม่

ถ้างานลักษณะนี้ ส่วนใหญ่ เขาจะใช้การคำนวณสดๆ กันเมื่อตอนแสดงผลเท่านั้นเลยครับ เช่นการรันลำดับตอนคิวรี่เอาข้อมูล (เขียนสูตรในคิวรี่)
หรือตอนที่ออกรายงาน (เขียนสูตรใน textbox ในมุมมองออกแบบของรายงาน)

ส่วนในตาราง ไม่น่าจะจำเป็นต้องทำ

แต่ถ้าหากมีความจำเป็นอื่นๆ หรือมีความซับซ้อนอื่นๆ ที่ต้องการจะให้บันทึกการรันลำดับลงในตารางจริงๆ (ซึ่งเหตุผลอาจไม่ได้บอกมา) ก็สามารถทำได้ครับ

[[[**ปล. เราสามารถกำหนด ให้ เวลาเราคีย์ ข้อมูลลงในช่อง Operate แล้ว ให้ ToolNo. ขึ้นเองอัตโนมัติได้มั้ยค่ะ]]] คำว่า ได้ไหมคะ เขียนผิดนะครับ "ไหม" ไม่ใช่ "มั้ย" และประโยคคำถาม คำว่า "คะ" ออกเสียงลอยๆ หางเสียงจะสูง ไม่ต้องมีไม้เอกครับ :)

Private Sub txOperate_Afterupdate()
dim xx as long
xx = dcount("ToolNo","ชื่อตาราง", "DocNo = 1") 'สั่งให้มันไปหาว่า เอกสารเลขที่ 1 นี้ มีรายการอยู่แล้วเท่าไร
me.txTooNo = "P" & xx + 1 ' เอาจำนวนที่หาได้มาบวกเพิ่มอีก 1 แล้วนำไปกรอกในช่อง toolNo
End Sub



3 @R23944
ขอบคุณ คุณ yeadram   สำหรับคำแนะนำและ โค้ด นะคะ

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