-
Thao tác với combobox
Noname > 19-09-10, 09:33 PM
Tác giả: hungtano
Site: khoahocphothong.net
Hỏi : Tôi có 1 combo box (cboMaHang), tôi muốn khi con chuột hoặc con trỏ nhảy đến cboMahang thì hộp danh sách tự động thả xuống, phải làm sao ?
Đáp : có nhiều cách, cách đơn giản nhất là tận dụng method sãn có của combo box : Dropdown.
Cách dùng:
__________________________________Mã:Private Sub cboMahang_GotFocus()
cboMahang.Dropdown
End Sub
Hỏi : Tôi có 1 combo box (cboMaHang), tôi muốn khi người dùng đánh mã hàng không có trong hộp danh sách thì hiện lên thông báo lỗi, phải làm sao ?
Đáp : dùng sự kiện NotInList của combo box
Private Sub cboMaHang_NotInList(NewData As String, Response As Integer)
Mã:Response = acDataErrContinue
MsgBox "Ma hang nay khong co.", , "Bao loi !"
End Sub
Bổ sung : Mở properties của cboMaHang --> Tab Data --> Limit To List : Yes -
RE: Thao tác với combobox
Noname > 19-09-10, 09:34 PM
Hỏi : Tôi có 1 combo box (cboMaHang), Số mã hàng trong table lên đến 2000 record. khi tôi mở Form, mở cboMahang, kéo thanh trượt của hộp danh sách để tìm mã hàng thì thấy từng record hiện lên rất chậm (nếu số mã hàng chỉ có 15 - 20 record thì rất nhanh). Có cach gì đơn giản và nhanh khi duyệt qua từng record trong hộp danh sách của combo box hay không ?
Đáp:
Giải thích : Khi bắt đầu kéo thanh trượt của hộp danh sách, bộ nhớ của máy tính mới bắt đầu tải các record từ table vào bộ nhớ để hiện lên trên form. Nếu số recod càng nhiều thì thời gian tải sẽ càng lâu.
Để khắc phục tình trạng này, ta sẽ cho chương trình tải tất cả các record vào bộ nhớ ngay khi mở Form. Nhờ đó, khi nhảy đến combo box, hộp danh sach sẽ hiện các danh sách rất nhanh vì đã có sẵn các record trong bộ nhớ máy tính.
Cách làm :
Ở sự kiện Form_Load
Mã:Private Sub Form_Load()
Dim lngCount As Variant
lngCount = cboMaHang.ListCount
End Sub -
RE: Thao tác với combobox
khanghai > 04-05-11, 04:43 PM
Cho e hỏi với...
E có xài combobox muốn hiện tất cả mã hàng thì thế nào dza?? -
RE: Thao tác với combobox
khanghai > 05-05-11, 10:22 AM
MABP TENBP
1 TỔ ANH HẬU
2 TỔ ANH TÀI
3 TỔ ANH TRUNG
4 VĂN PHÒNG
5 TỔ DESIGN
6 TỔ PHÒNG SÁP
7 TỔ PHÒNG XOÀN
8 ALL
đây là 1table phòng ban..khi sử dụng combo box...trong mainform và subform.
chọn từng phòng ban e làm được rùi.Nhưng e muốn chọn tất cả thì viết câu lênh ntn??
Chỉ dùm e hen..
Thanks!!! -
RE: Thao tác với combobox
Noname > 05-05-11, 02:50 PM
chọn tất cả thì : like * -
RE: Thao tác với combobox
khanghai > 05-05-11, 05:00 PM
(05-05-11, 02:50 PM)Noname Đã viết: chọn tất cả thì : like *
http://www.mediafire.com/?cb46iu4q5a267ca
A vào xem dùm e??
Ở Form tong hop luong nhan vien
combo box TỔ
chọn từng phòng ban thì làm được nhưng khi chọn tất cả thì e hok làm được...
Nếu có viết code thì chỉ dùm e..
thanks!! -
RE: Thao tác với combobox
haquocquan > 06-05-11, 01:30 AM
Trong trường hợp này: mình sẽ không có ALL trong t01_phongban
Khi ở FORM bạn muốn hiện tất cả thì để trống.
Đồng thời sửa rowsource của SUBFORM (đoạn này
Bạn xem fileMã:WHERE ((([Q_LUONG NHAN VIEN SUB].MABP) Like [CBOBP]&"*") AND ((Format([THANG],"MM"))=[CBOTHANG TONG HOP LUONG NV]));
-
RE: Thao tác với combobox
khanghai > 06-05-11, 09:25 AM
(06-05-11, 01:30 AM)haquocquan Đã viết: Trong trường hợp này: mình sẽ không có ALL trong t01_phongban
Khi ở FORM bạn muốn hiện tất cả thì để trống.
Đồng thời sửa rowsource của SUBFORM (đoạn này
Bạn xem fileMã:WHERE ((([Q_LUONG NHAN VIEN SUB].MABP) Like [CBOBP]&"*") AND ((Format([THANG],"MM"))=[CBOTHANG TONG HOP LUONG NV]));
Thanks A nhiều...
Nhưng e muốn thêm 1 row "ALL" ở table t01_phong ban
Để kết hợp với nút command show all
-
RE: Thao tác với combobox
Noname > 06-05-11, 10:37 AM
bạn đặt thế này cho điều kiện mã Phòng Ban
Mã:Like IIf([CBOBP]=8,"*",[cbobp])