Hỏi về Tab Order! (1 người xem)

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

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

ThuNghi

Hãy cho rồi sẽ nhận!
Thành viên đã mất
Tham gia
16/8/06
Bài viết
3,808
Được thích
4,449
Tôi có 1 form gồm 3 TextBox và 1 Command Button, theo Tab order như sau:
TextBox1, TextBox2,TextBox3, Command Button.
Nếu không gán thuộc tính cho Command Button (Không dùng Accelerator) thì có cách nào tại TextBox1, hay 2,3 nếu giá trị là rỗng, khi enter hay tab thì đến ngay Command Button (con trỏ đến).
Xin nhờ giúp đỡ, cám ơn nhiều.
 
Gán thuộc tính Setfocus cho CommandButton khi Text1 or text2 or Text3=""
VD:
Private Sub Text1_AfterUpdate()
If Text1 = "" Then
CommanButton.Setfocus
End If
End Sub

Thân
 
Lần chỉnh sửa cuối:
Cám ơn anh nhiều, do em đã đặt name cho CommandButton là CB mà vẫn CommandButton.setfocus, nên nó không OK. Em hiểu rồi.
...
Sao vẫn chưa được, anhphuong, Mr OkeBab và các bạn xem lại hộ theo file kèm
Giải thích hộ luôn: Phím Enter: chạy theo tab order nhưng đến command thì ngưng, tab thì chạy bất kể command hay textbox, phím mũi tên chỉ chạy các textbox.
 

File đính kèm

Lần chỉnh sửa cuối:
Nếu đặt name thì càng dễ nữa :
Giả sử CB đó tên là CBThoat

Thay CommanButton.Setfocus
bằng
Form :
Me.CBThoat.Setfocus

Sheet S01
S01.CBThoat.Setfocus


Thân!
 
Nguyên văn bởi ThuNghi
có cách nào tại TextBox1, hay 2,3 nếu giá trị là rỗng, khi enter hay tab thì đến ngay Command Button (con trỏ đến).
Bạn thử dùng đoạn code sau:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If (KeyCode = vbKeyTab Or KeyCode = vbKeyReturn) And TextBox1.Text = "" Then
CB01.SetFocus
End If
End Sub
Thân.
 
Nhờ anh chỉ cụ thể câu này
(KeyCode = vbKeyTab Or KeyCode = vbKeyReturn)
Cám ơn anh nhiều.
 
ThuNghi đã viết:
Nhờ anh chỉ cụ thể câu này
(KeyCode = vbKeyTab Or KeyCode = vbKeyReturn)
Cám ơn anh nhiều.
Chào ThuNghi,

KeyCode là mã bàn phím trả về, vbKeyTab và vbKeyReturn là các hằng số do VBA qui định sẵn tương ứng với mã các phím TAB và Enter trên bàn phím.

Câu lệnh dưới sẽ kiểm tra nếu TextBox1 rỗng và nhấn phím TAB hat Enter thì sẽ nhảy đến CB01.
If (KeyCode = vbKeyTab Or KeyCode = vbKeyReturn) And TextBox1.Text = "" Then
CB01.SetFocus

Nhấn ALT+F11 vào VBE, Nhấn F2 vào Object Browser
ObjectBrowser.jpg


TP.
 
Web KT

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

Back
Top Bottom