-
Cách không cho nhập chỉ cho chọn trong combobox của access
thunga25 > 09-03-15, 09:45 AM
Minh muốn làm cái combobox chỉ cho chọn chứ không cho nhập mà không biết làm, bạn nào biết chỉ giúp mình với, -
RE: Cách không cho nhập chỉ cho chọn trong combobox của access
maidinhdan > 09-03-15, 10:04 AM
(09-03-15, 09:45 AM)thunga25 Đã viết: Minh muốn làm cái combobox chỉ cho chọn chứ không cho nhập mà không biết làm, bạn nào biết chỉ giúp mình với,
Bạn thêm dòng lệnh sau vào sự kiện KeyPress
Mã PHP:Private Sub cbchon_KeyPress(KeyAscii As Integer)
MsgBox "Không nhập du liệu bằng bàn phím, Nhấp chọn theo danh sách là được rồi. Cảm ơn", vbInformation, "Thông báo"
Me.cbchon.Dropdown
End Sub
Trong đó: cbchon là Combobox của bạn.
Khi chọn xong nếu bạn muốn nó nhảy đến ô tiếp theo nào đó: giả sử tên ô tiếp theo là ô Gioitinh thì thêm code vào sự kiện After Update của combobox cbchon như sau
Mã PHP:Private Sub cbchon_AfterUpdate()
Me.gioitinh.SetFocus
End Sub
Chúc bạn thành công! -
RE: Cách không cho nhập chỉ cho chọn trong combobox của access
MTNQ > 10-03-15, 02:23 AM
Mình xin góp ý chút:
Làm như cách của bạn maidinhdan cũng được nhưng tất cả các phím nhấn trên Combobox (kể cả phím Enter, Tab,...) đều hiển thị thông báo thì khá bất tiện
Có lẽ ý của chủ thớt là không cho người dùng nhập thêm những gì nằm ngoài danh sách có trong list của cbo (ví dụ chỉ được chọn Nam hay Nữ chứ không được nhập vào BD hay ...), Cách của mình thường làm như sau:
1/- Set thuộc tính cho cbo:
- Limit To List : Yes
- AllowValueListEdits : No
2/Code cho sự kiện On Not in List tương tự như sau:
Mã:Private Sub Combo20_NotInList(NewData As String, Response As Integer)
Response = acDataErrContinue
MsgBox "nhap sai, vui long nhap lai"
With Me.Combo20 'voi Combo20 la ten cua ComboBox
.Value = ""
.SetFocus
End With
End Sub -
RE: Cách không cho nhập chỉ cho chọn trong combobox của access
tranthanhan1962 > 05-04-15, 11:22 PM
Các bạn maidinhdan và MatTroiNguQuen giới thiệu với bạn cách xử lý cách không cho nhập chỉ cho chọn trong combobox của access với thông báo. Mình giới thiệu thêm cho bạn 2 cách để xử lý.
Giả sử combobox của bạn tên là Danh_sách.
1/ Trường hợp bạn không quan tâm đến người nhập liệu mà chỉ cần cấm không cho nhập, không cần thông báo:
Private Sub Danh_sách_NotInList(NewData As String, Response As Integer)
Response = acDataErrContinue
Danh_sách.Value=""
End Sub
2/ Trường hợp combobox Danh_sách có RowSource là field của một bảng khác, và bạn nhập cần nhập giá trị của field bổ sung thêm cho Danh_sách ngay khi chọn giá trị mới: bạn có thể theo dõi tại đây -
RE: Cách không cho nhập chỉ cho chọn trong combobox của access
hkht > 20-07-15, 10:31 AM
ok rồi, cảm ơn các bạn nhiều