Page 1 of 1

ต้องการให้ textbox คีย์เฉพาะตัวเลข

Posted: Tue Sep 01, 2015 12:58 pm
by yodpao.b
ต้องการให้ textbox คีย์เฉพาะตัวเลข
ได้โคดมาจากในเนตครับ

Code: Select all

Private Sub TextBox1_Change()
If Me.TextBox1.Value = blank Then Exit Sub
 With Me.TextBox1
     chkval = Application.WorksheetFunction.IsNumber(Evaluate(Me.TextBox1.Value))
     If chkval = False Then
         MsgBox ("ใส่ค่าเป็นตัวเลขเท่านั้น")
        .Value = Left(.Value, Len(.Value) - 1)
     End If
 End With
End Sub
ไม่เข้าใจว่าทำไม่ถึงคีย์ตัวเลขบางตัวไม่ได้ครับ เช่น 11,13 เป็นต้น
จะเกิน eeror ที่บรรทัดแถบสีเหลืองครับ
2.JPG
11.JPG

Re: ต้องการให้ textbox คีย์เฉพาะตัวเลข

Posted: Tue Sep 01, 2015 1:02 pm
by DhitiBank
ไม่แน่ใจว่าจะได้ไหมครับ หากแนบไฟล์ด้วยจะดีมากครับ
ลองเปลี่ยน Application.WorksheetFunction.IsNumber(Evaluate(Me.TextBox1.Value))
เป็น IsNumeric(.Value)

Re: ต้องการให้ textbox คีย์เฉพาะตัวเลข

Posted: Tue Sep 01, 2015 1:44 pm
by yodpao.b
Code ที่ท่านให้มายังใช้ไม่ได้ครับ
รบกวนด้วยครับ

แนบไฟลครับ


จากรูป
12.JPG
1.คลิกที่เซล K67

2.คลิกกล่อง ที่วงกลมสีแดงครับ

3.พิมพ์เลข 11 หรือ 13 (จะeeroe)

Re: ต้องการให้ textbox คีย์เฉพาะตัวเลข

Posted: Tue Sep 01, 2015 1:55 pm
by DhitiBank
ผมลองปรับเป็น Isnumeric(.value) ก็ไม่เห็น error แล้วนะครับ :?:

Re: ต้องการให้ textbox คีย์เฉพาะตัวเลข

Posted: Tue Sep 01, 2015 1:56 pm
by bank9597
ลองโค๊ดนี้ครับ

Code: Select all

    If Not IsNumeric(Me.textBox1) Then
        MsgBox "Please Enter Number Only", vbCritical
    Else
        'Other Code
    End If

Re: ต้องการให้ textbox คีย์เฉพาะตัวเลข

Posted: Wed Sep 02, 2015 1:11 pm
by yodpao.b

Code: Select all

    If Not IsNumeric(Me.textBox1) Then
        MsgBox "Please Enter Number Only", vbCritical
    Else
        'Other Code
    End If
ได้ลองใช้สูตรด้านบนแล้วครับ
เมื่อพิพ์ผิด โชว์MsgBox แต่ตัวหนังสือที่พิพ์ผิดไม่ลบให้ครับ
โคดยี้ยังไม่ตรงกับความต้องการครับ

Re: ต้องการให้ textbox คีย์เฉพาะตัวเลข

Posted: Wed Sep 02, 2015 7:22 pm
by snasui
:D ลองปรับให้ลบค่าที่คีย์มาดูก่อน ติดแล้วค่อยถามกันต่อครับ

Re: ต้องการให้ textbox คีย์เฉพาะตัวเลข

Posted: Wed Sep 02, 2015 9:20 pm
by DhitiBank
yodpao.b wrote:Code ที่ให้มายังใช้ไม่ได้ครับ
ก่อนแจ้งว่าใช้ไม่ได้ ไม่ทราบว่าคุณ yodpao.b ได้ลองปรับจาก
chkval = Application.WorksheetFunction.IsNumber(Evaluate(Me.TextBox1.Value))
เป็น
chkval = IsNumeric(.Value)
ตามที่แจ้งไปแล้วหรือยังครับ :?:

ผมลองแล้วได้ตามรูปครับ
001.jpg
002.jpg
ปล. ขอขอบคุณสำหรับโค้ดการใช้ text box แบบนี้ด้วยครับ สะดวกดี

Re: ต้องการให้ textbox คีย์เฉพาะตัวเลข

Posted: Thu Sep 03, 2015 12:33 pm
by yodpao.b
ต้องขอโทษอาจารย์และเพื่อนทุกท่านด้วยครับ
ผมมองไม่เห็น Post ของคุณ DhitiBank

Post ของคุณ DhitiBank แก้ไขได้ถูกต้องแล้วครับ

เพื่อนที่ทำงานชอบไฟล์นี้มากครับ เพราะสามารถลดเวลาในการกรอกข้อมูลหลังจากการวัดค่าความส่องสว่างในตอนกลางคืน

เพราะลักษณะงานผลคือกลางคืนทำ เช้าส่งงาน กลางวันไปเตรียมงานที่สถานที่อื่น

ขอขอบคุณอาจารย์และเพื่อนทุกท่านด้วยครับ