กระทู้เก่าบอร์ด อ.Yeadram
1,000 8
URL.หัวข้อ /
URL
รหัสสมาชิกกับลำดับระบียนไม่ตรงกัน
รหัสสมาชิกกับลำดับระบียนไม่ตรงกัน
จะต้องทำอย่างไรให้ ทั้งสองอย่างตรงกัน เช่น
รหัสสมาชิก ที่ 111 แต่ระเบียนที่เลื่อน กลับเป็น 200 เป็นต้น
ควรจะทำอย่างไรให้ระเบียนตรงกับรหัสสมาชิก เพื่อความสะดวกในการค้นหาข้อมูล
และ รหัสสมาชิก ใช้เป็น AutoNumber ซึ่งเมื่อลบระเบียนไป มันจะรันข้าม
ระัเบียนี่ลบไป
เช่น รหัสสมาชิก 100 ถูกลบไป รหัสสมาชิกสุดท้ายที่มีคือ รหัสสมาชิก 99
แต่พอเพิ่มข้อมูลสมาชิก ไปมันจะกำหนดเป็นรหัสสมาชิก 101 แต่ที่ต้องการคือ รหัสสมาชิก100 ซึ่งอยากให้ลำดับต่อกัน
ควรตั้งค่าอย่างไรค่ะ
จะต้องทำอย่างไรให้ ทั้งสองอย่างตรงกัน เช่น
รหัสสมาชิก ที่ 111 แต่ระเบียนที่เลื่อน กลับเป็น 200 เป็นต้น
ควรจะทำอย่างไรให้ระเบียนตรงกับรหัสสมาชิก เพื่อความสะดวกในการค้นหาข้อมูล
และ รหัสสมาชิก ใช้เป็น AutoNumber ซึ่งเมื่อลบระเบียนไป มันจะรันข้าม
ระัเบียนี่ลบไป
เช่น รหัสสมาชิก 100 ถูกลบไป รหัสสมาชิกสุดท้ายที่มีคือ รหัสสมาชิก 99
แต่พอเพิ่มข้อมูลสมาชิก ไปมันจะกำหนดเป็นรหัสสมาชิก 101 แต่ที่ต้องการคือ รหัสสมาชิก100 ซึ่งอยากให้ลำดับต่อกัน
ควรตั้งค่าอย่างไรค่ะ
8 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R15717
เวลาเพิ่มข้อมมูล ก็สั่งให้ + 1 ก็จะเรียงกันนั้น
ควรทำอย่างไรค่ะ หนูรบกวนขอคำแนะนำหน่อยค่ะ
ควรทำอย่างไรค่ะ หนูรบกวนขอคำแนะนำหน่อยค่ะ
3 @R15718
มันแล้วแต่โปรแกรมที่เขียน เบื้องต้นก็ประมาณ
กำหนดให้ฟิลด์ที่รัน เท่ากับ Nz(DMax("[ฟิลด์ที่จะรัน]", "ตารางหรือคิวรี่ที่จะรัน")) + 1
กำหนดให้ฟิลด์ที่รัน เท่ากับ Nz(DMax("[ฟิลด์ที่จะรัน]", "ตารางหรือคิวรี่ที่จะรัน")) + 1
4 @R15719
=Nz(DMax("[Member_Id]","Member_Info"))+1
ลองดูแล้ว มันแสดงข้อมูลรหัสสมาชิกคนสุดท้ายเลย ในทุกๆรหัสสมาชชิก
จะต้องทำอย่างไรค่ะ
ลองดูแล้ว มันแสดงข้อมูลรหัสสมาชิกคนสุดท้ายเลย ในทุกๆรหัสสมาชชิก
จะต้องทำอย่างไรค่ะ
5 @R15720
ผมไม่รู้ ว่าโปรแกรมคุณเขียนยังงัย เลยบอกไม่ได้ครับ บอกแนวทางให้ หรือ ลอง ค้น คำว่า Dmax อ่านดูก่อนครับ
6 @R15721
คือ เขียนตรงๆในฟอร์มเลยคะ ไม่มีเงื่อนไขอะไร
ปกติหนูใช้ Member_Id มาแสดงรหัสสมาชิกเลย เมื่อต้องการเพิ่มก็ คีย์ข้อมูลเอง
แต่หนูอยากได้แบบ ไม่ต้องมาย้อนกลับไปดูว่ารหัสที่เท่าไหร่ เลยอยากรบกวนช่วยแนะนำหน่อยคะ
ปกติหนูใช้ Member_Id มาแสดงรหัสสมาชิกเลย เมื่อต้องการเพิ่มก็ คีย์ข้อมูลเอง
แต่หนูอยากได้แบบ ไม่ต้องมาย้อนกลับไปดูว่ารหัสที่เท่าไหร่ เลยอยากรบกวนช่วยแนะนำหน่อยคะ
7 @R15722
สร้างปุ่มเพิ่มนะครับ
Private Sub ชื่อปุ่ม_Click()
DoCmd.GoToRecord , , acNewRec
Me.ชื่อคอนโทล = Nz(DMax("[Member_Id]","Member_Info"))+1
Exit Sub
End Sub
8 @R15725
จริงๆก็พอมีเทคนิคอยู่ แต่หากไม่ชำนาญการเขียนโค๊ดผมคงไม่กล้าแนะนำนะครับ
เอาวิธีนี้ง่ายสุดครับ คือ ทุกครั้งที่คุณลบเรคคอร์ดเมื่อไร ยำว่าต้องหลังการลบทันที และต้องเป็นเรคคอร์ดล่าสุดหรือสุดท้ายเท่านั้น
ให้ทำการ Compact and Repair Database ในเมนู Database Tools
แล้วเลข AutoNumber จะนับต่อจากเลขล่าสุดเหมือนเดิม แต่วิธีนี้มีข้อเสียตรงที่โปรแกรมมันจะปิดไฟล์ก่อน Compact และเมื่อ Compact เสร็จ มันจะเหมือนกับการที่คุณเรียกไฟล์ใหม่อ่ะครับ แต่เป็นวิธีที่ง่ายสุด และผมก็ใช้บ่อยมาก
เอาวิธีนี้ง่ายสุดครับ คือ ทุกครั้งที่คุณลบเรคคอร์ดเมื่อไร ยำว่าต้องหลังการลบทันที และต้องเป็นเรคคอร์ดล่าสุดหรือสุดท้ายเท่านั้น
ให้ทำการ Compact and Repair Database ในเมนู Database Tools
แล้วเลข AutoNumber จะนับต่อจากเลขล่าสุดเหมือนเดิม แต่วิธีนี้มีข้อเสียตรงที่โปรแกรมมันจะปิดไฟล์ก่อน Compact และเมื่อ Compact เสร็จ มันจะเหมือนกับการที่คุณเรียกไฟล์ใหม่อ่ะครับ แต่เป็นวิธีที่ง่ายสุด และผมก็ใช้บ่อยมาก
Time: 0.2763s
รหัสสมาชิกควรใช้ Text หรือ Number มากกว่า
เวลาเพิ่มข้อมมูล ก็สั่งให้ + 1 ก็จะเรียงกันครับ