Giúp định dạng dấu thập phân của tất cả các textbox trên form (1 người xem)

  • Thread starter Thread starter ltng82
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

ltng82

Thành viên mới
Tham gia
14/5/12
Bài viết
14
Được thích
0
Mình có một loạt textbox: textbox1, textbox2, textbox3....với định dạng nhập dữ liệu là giống nhau cho tất cả textbox
Mã:
Private Sub TxtB1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)Select Case KeyAscii
Case Asc("0") To Asc("9")
Case Asc(".")
If InStr(1, Me.txtb1.Text, ".") > 0 Then
KeyAscii = 0
End If
Case Else
KeyAscii = 0
End Select
End Sub

Private Sub TxtB2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case Asc("0") To Asc("9")
Case Asc(".")
If InStr(1, Me.txtb2.Text, ".") > 0 Then
KeyAscii = 0
End If
Case Else
KeyAscii = 0
End Select
End Sub

Private Sub TxtB3_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case Asc("0") To Asc("9")
Case Asc(".")
If InStr(1, Me.txtb3.Text, ".") > 0 Then
KeyAscii = 0
End If
Case Else
KeyAscii = 0
End Select
End Sub

......
H mình muốn hỏi là làm sao thu gọn các code bằng vòng lặp mà không thay đổi thuộc tính nhập vào các textbox như trên. Thank trước.
 
Mình có một loạt textbox: textbox1, textbox2, textbox3....với định dạng nhập dữ liệu là giống nhau cho tất cả textbox

H mình muốn hỏi là làm sao thu gọn các code bằng vòng lặp mà không thay đổi thuộc tính nhập vào các textbox như trên. Thank trước.

Đơn giản chỉ cần nhét code đó vào 1 sub chung (MyKeyPress), rui tại các sub even KeyPress gọi sub đó, như sau:
[GPECODE=vb]
Private Sub MyKeyPress(Tb As MSForms.TextBox, ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case Asc("0") To Asc("9")
Case Asc(".")
If InStr(1, Tb.Text, ".") > 0 Then
KeyAscii = 0
End If
Case Else
KeyAscii = 0
End Select
End Sub

[/GPECODE]

tại TxtB1_KeyPressta viết thế này
[GPECODE=vb]Private Sub TxtB1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Call MyKeyPress(TxtB1, KeyAscii)
End Sub[/GPECODE]

tương tự cho TxtB2,TxtB3,... là XONG
 
Upvote 0

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

Back
Top Bottom