อยากได้ค๊ดควบคุมการคีย์ข้อมูลให้ตรงรูปแบบบ้างครับ
กระทู้เก่าบอร์ด อ.Yeadram

 1,639   10
URL.หัวข้อ / URL
อยากได้ค๊ดควบคุมการคีย์ข้อมูลให้ตรงรูปแบบบ้างครับ

เรียนท่านอาจารย์ครับ ผมอยากได้ไฟล์ตัวอย่าง บ้างครับ เพราะผมหามานานแล้วครับ พึ่งจะเจอ รบกวนท่านอาจารย์ ส่งไฟล์ตัวอย่างให้ผมได้ไหมครับ เพื่อเป็นแนวทางที่จะฝึกและศึกษาต่อไปครับ (Piyaphan@se-ed.com) คือผมอ่านที่ท่านอาจารย์ตอบคุณ มาลีแล้ว ผมยังงงๆ อยู่ครับ คือไม่ทราบว่า ที่ table ตรงฟิวล์ em_idcard ต้องกำหนดอะไรบ้าง และที่ ฟอร์ม ต้องใส่หรือกำหนดที่ตรงไหนบ้าง รบกวนท่านอาจารย์ ส่งไฟล์ตัวอย่าง เล็กๆ หรือง่ายๆ แบบนี้ก็ได้ครับ

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

1 @R00986
ตามลิงค์นะครับ
ดู Reply ที่ (R00985)

http://thai-access.com/yeadram_view.php?topic_id=213&page=2
2 @R01014
ผมทำได้แล้วครับ แต่ทีนี้ผมต้องขอรบกวนท่านอาจารย์ อีกนิดครับ คือว่าพอเราคีย์ข้อมูลเข้าไปแล้ว สมมุติว่าไปซ้ำกับข้อมูลที่มีอยู่แล้ว มันจะขึ้น Bsgbox มา บอกว่า มีข้มูลอยู่แล้ว ทีนี้ พอเราคลิก OK ผมอยากให้มันเคลียร์ข้อมูลที่เราได้ป้อนเข้าไปแล้วนะครับ คือให้เป็น ช่องว่างซะ ไม่ทราบว่าเราต้องใส่โค๊ดว่าอย่างไรครับอาจารย์ครับ และใส่ตรงไหนครับ
3 @R01015
.....
msgbox .....
txt_id_card = ""
cancel=true
.....
4 @R01019
ผมต้องรบกวนท่านอาจารย์อีกครั้งครับ คือผมลองเอาโค๊ดของท่านอาจารย์ใส่เข้าไปแล้วแต่ก็ยังเคลียร์ไม่ได้ครับ รบกวนท่านอาจารย์ดูให้ด้วยครับ
Private Sub tx_idcard_BeforeUpdate(Cancel As Integer)
if not isnumeric(tx_idcard) then
    MsgBox "ข้อมูลที่กรอกไม่ใช่ตัวเลข", vbCritical, "ข้อมูลผิด"
    txt_id_card = ""
    cancel = True   
Elseif len(tx_idcard)<>13 then
    MsgBox "จำนวนอักขระ ไม่ถูกต้อง", vbCritical, "ข้อมูลผิด"
    cancel = True
ElseIf Not IsNull(DLookup("em_idcard", "tbEmployee", "[em_idcard] = '" & tx_idcard & "'")) Then
    MsgBox "รหัสนี้มีในระบบแล้ว", vbCritical, "ข้อมูลผิด"
    cancel = True
End If
End Sub

5 @R01020
มันเขียนผิดนะครับ ชื่อคอนโทรล ตอนตอบ R01015 ผมไม่ได้เข้าไปดูต้นฉบับ
ก็เอาแบบระลึกชาติ เอา

ชื่อคอนโทรลมันเขียนให้ถูกก่อนครับ

if not isnumeric(tx_idcard) then
    MsgBox "ข้อมูลที่กรอกไม่ใช่ตัวเลข", vbCritical, "ข้อมูลผิด"
    tx_idcard = ""
    cancel = True
...
6 @R01030
เรียนท่านอาจารย์ครับ ผมลองใส่ดูแล้วครับมันขึ้นฟ้องตรงที่ ใส่โค๊ดนั้นครับ มันขึ้นเป็นแทบสีเหลืองครับ
7 @R01032
Private Sub tx_idcard_BeforeUpdate(Cancel As Integer)
if not isnumeric(tx_idcard) then
    MsgBox "ข้อมูลที่กรอกไม่ใช่ตัวเลข", vbCritical, "ข้อมูลผิด"
''' txt_id_card = ""
    cancel = True
    tx_idcard=""
Elseif len(tx_idcard)<>13 then
    MsgBox "จำนวนอักขระ ไม่ถูกต้อง", vbCritical, "ข้อมูลผิด"
    cancel = True
ElseIf Not IsNull(DLookup("em_idcard", "tbEmployee", "[em_idcard] = '" & tx_idcard & "'")) Then
    MsgBox "รหัสนี้มีในระบบแล้ว", vbCritical, "ข้อมูลผิด"
    cancel = True
End If
End Sub

ลองย้ายไปอยู่ที่ข้างหลัง cancel ครับ
8 @R01035
ขอต้องขอโทษจริงๆครับท่านอาจารย์ ผมลองย้ายแล้วครับแต่มันก็ยังไม่ได้ครับ ผมงง มากๆเลยครับ อาจารย์ครับถ้าผมจะแนบไฟล์มาให้ดูผมจะต้องทำอย่างไรบ้างครับ
9 @R01036
ส่งไปที่ accboard_gmail_com
เขียน subject ว่า "การคีย์ข้อมูลให้ตรงรูปแบบ -ปิยะพันธุ์"
เขียนเนื้อความให้ท่านอื่นๆ อ่านพอได้ใจความ หรือจะแนบลิงค์กระทู้นี้ไว้ด้วยก็ได้ครับ

เพราะอีเมล์แอดเดรสนี้ เป็นส่วนรวม ทุกคนเข้าอ่านได้ครับ
user : accboard
pass : accgmail
10 @R01043
เอามา test อีกทีแล้วครับ หลังจากเราสั่ง cancel มัน (ไม่ให้มีการอับเดตข้อมูล)
แล้วเราไปกำหนดค่าของ textbox ไม่ได้เลย เหตุผลมันคงต้องถามผู้รู้ท่านอื่นๆ ครับ แต่ผมใช้วิธีกำปั้นทุบดินไปก่อนครับ คือ สั่งให้มัน กด Esc ครับ
ตามนี้เลย ทดสอบแล้วได้ผลครับ



Private Sub tx_idcard_BeforeUpdate(Cancel As Integer)
If Not IsNumeric(tx_idcard) Then
    MsgBox "ข้อมูลที่กรอกไม่ใช่ตัวเลข", vbCritical, "ข้อมูลผิด"
    Cancel = True
    SendKeys "{ESC}"
ElseIf Len(tx_idcard) <> 13 Then
    MsgBox "จำนวนอักขระ ไม่ถูกต้อง", vbCritical, "ข้อมูลผิด"
    Cancel = True
    SendKeys "{ESC}"
ElseIf Not IsNull(DLookup("em_idcard", "tbEmployee", "[em_idcard] = '" & tx_idcard & "'")) Then
    MsgBox "รหัสนี้มีในระบบแล้ว", vbCritical, "ข้อมูลผิด"
    Cancel = True
    SendKeys "{ESC}"
End If
End Sub


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