Xin code chỉ cho nhập từ số 1 đến số 3 vào ký tự đầu tiên của Textbox

Liên hệ QC

thanchetvnt

Thành viên chính thức
Tham gia
28/7/08
Bài viết
73
Được thích
21
Nhờ các bạn chỉ giúp code để chỉ cho phép nhân ký tự đầu tiên của một textbox là số 1 hoặc 2 hoặc 3 mà không thể nhập được số hay ký tự nào khác.
Cảm ơn trước nhé.
 
Nhờ các bạn chỉ giúp code để chỉ cho phép nhân ký tự đầu tiên của một textbox là số 1 hoặc 2 hoặc 3 mà không thể nhập được số hay ký tự nào khác.
Cảm ơn trước nhé.


Dùng thử cái này xem

Mã:
Private Sub TextBox1_AfterUpdate()
    If Left(TextBox1, 1) > 3 Or Left(TexBox1,1) = 0 Then
        MsgBox "So dau tien phai trong khoang 1-3", , "Thong Bao"
        Exit Sub
    End If
End Sub
 
Upvote 0
Bạn dung code sau cũng có lý này, chẳng gõ được gì khác từ 1 đến 3 trong textbox1 ký tự đầu tiên, kể cả chọn cả Textbox gõ lại

PHP:
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If Len(Trim(Me.TextBox1)) > 0 And Me.TextBox1.SelLength <> Len(Me.TextBox1) Then Exit Sub
If Chr(KeyAscii) Like "[!1-3]" Then KeyAscii = 0
End Sub
Đoạn And Me.TextBox1.SelLength <> Len(Me.TextBox1) là để đề phòng khi bạn chọn cả Textbox và gõ thay thế
 

File đính kèm

Upvote 0
Trên đường đi làm về mình nghĩ có 1 cách hay hơn là cứ con trỏ ở vị trí đầu thì chặn. Như vậy kể cả đưa con trỏ chèn vào đầu hay chọn 1 vài ký tự đầu vẫn kiểm soát được.
Các bạn sửa lại code bài trước thành:

PHP:
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If Me.TextBox1.SelStart > 0 Then Exit Sub
If Chr(KeyAscii) Like "[!1-3]" Then KeyAscii = 0
End Sub

Vừa đơn giản hơn vừa hiệu quả hơn.
 

File đính kèm

Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom