กระทู้เก่าบอร์ด อ.Yeadram
733 2
URL.หัวข้อ /
URL
เพิ่มทีละ1 ทั้งตัวเลขและตัวอักษร
เรียนอาจารย์ทุกท่าน ข้อมูล เป็น text ขนาด 2 ตัวอักษร ต้องการเพิ่มข้อมูลเรื่อย
โดยเริ่มจาก 01 จนถึง ZZ
01-99
A1-A9
B1-B9
Z1-Z9
AA-AZ
ZA-ZZ
ชื่อตาราง tblPat และ field ชื่อ regno(data type(text,2)
ไม่ทราบว่าต้องเขียนคำสั่งอย่างไรครับ
ขอบคุณทุกคำตอบที่ให้คำแนะนำ หากคำถามไม่ชัดเจนต้องขออภัยด้วย
โดยเริ่มจาก 01 จนถึง ZZ
01-99
A1-A9
B1-B9
Z1-Z9
AA-AZ
ZA-ZZ
ชื่อตาราง tblPat และ field ชื่อ regno(data type(text,2)
ไม่ทราบว่าต้องเขียนคำสั่งอย่างไรครับ
ขอบคุณทุกคำตอบที่ให้คำแนะนำ หากคำถามไม่ชัดเจนต้องขออภัยด้วย
2 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R22903
ขอบคุณอาจารย์มากครับ
Time: 0.2906s
Public Function NextNo(LR As String) As String
Dim L As String
Dim R As String
If LR = "" Then NextNo = "01": Exit Function
L = Left$(LR, 1): R = Right$(LR, 1)
If L >= "0" And L <= "9" Then
If LR = "99" Then
NextNo = "A1"
ElseIf R = "9" Then
NextNo = Chr$(Asc(L) + 1) + "0"
Else
NextNo = L + Chr$(Asc(R) + 1)
End If
Exit Function
End If
If R >= "1" And R <= "9" Then
If LR = "Z9" Then
NextNo = "AA"
ElseIf R = "9" Then
NextNo = Chr$(Asc(L) + 1) + "1"
Else
NextNo = L + Chr$(Asc(R) + 1)
End If
Exit Function
End If
If R >= "A" And R <= "Z" Then
If LR = "ZZ" Then
NextNo = ""
ElseIf R = "Z" Then
NextNo = Chr$(Asc(L) + 1) + "A"
Else
NextNo = L + Chr$(Asc(R) + 1)
End If
Exit Function
End If
End Function
เราเอาเลขล่าล่าสุดที่ได้สร้างไว้แล้ว ใส่เข้าไปในฟังก์ชั่น NextNo() แล้วก็เอาเลขที่คืนมาจากฟังก์ชั่นนี้ไปใส่ฟิลด์ RegNo เท่านั้นเองครับ ก็จะได้เป็น RegNo = NextNo(RegNo) พอดีไม่มีเวลาอธิบายโค้ดนะครับ ลองแกะเอาก่อนแล้วกัน