congmanh333 > 15-12-15, 09:00 AM
ongke0711 > 15-12-15, 03:20 PM
congmanh333 > 16-12-15, 11:55 AM
vucongpda > 20-12-15, 05:56 PM
ongke0711 > 20-12-15, 09:17 PM
(20-12-15, 05:56 PM)vucongpda Đã viết: Em chào mọi người,
Em hiện đang bị vướng phần tìm kiếm trong combobox như sau:
Theo mặc định thì khi ấn nút mũi tên trong combox thì sẽ hiện lên một lọạt danh sách. Mình mốn tìm một dòng trong các danh sách đó thì gõ chữ cái đầu tiên nó mới hiện ra còn không thì không có gì. Đối với danh sách ít thì tự chọn, còn nếu dài thì quả là khó. Vì vậy em muốn là gõ bất kỳ ký tự nào thì nó sẽ chuyển đến dòng tương ứng (nếu có ký tự giống là ok).
Mong mọi người giúp đỡ,
Private Sub cboHoTen_Change()
Dim strText, strFind As String
strText = Me.cboHoTen.Text
If Len(Trim(strText)) > 0 Then
strFind = "HoTen Like '"
Dim i As Integer
Dim strSQL As String
For i = 1 To Len(Trim(strText))
If (Right(strFind, 1) = "*") Then
strFind = Left(strFind, Len(strFind) - 1)
End If
strFind = strFind & "*" & Mid(strText, i, 1) & "*"
Next
strFind = strFind & "'"
strSQL = "SELECT tblNhanVien.ID, tblNhanVien.HoTen FROM tblNhanVien Where " & strFind & ";"
Me.cboHoTen.RowSource = strSQL
Else
strSQL = "SELECT tblNhanVien.ID, tblNhanVien.HoTen FROM tblNhanVien;"
Me.cboHoTen.RowSource = strSQL
End If
Me.cboHoTen.Dropdown
End Sub
vucongpda > 21-12-15, 12:22 AM
(20-12-15, 09:17 PM)ongke0711 Đã viết:(20-12-15, 05:56 PM)vucongpda Đã viết: Em chào mọi người,
Em hiện đang bị vướng phần tìm kiếm trong combobox như sau:
Theo mặc định thì khi ấn nút mũi tên trong combox thì sẽ hiện lên một lọạt danh sách. Mình mốn tìm một dòng trong các danh sách đó thì gõ chữ cái đầu tiên nó mới hiện ra còn không thì không có gì. Đối với danh sách ít thì tự chọn, còn nếu dài thì quả là khó. Vì vậy em muốn là gõ bất kỳ ký tự nào thì nó sẽ chuyển đến dòng tương ứng (nếu có ký tự giống là ok).
Mong mọi người giúp đỡ,
Bạn xem cách của anh tranthanhan1962 theo link bên dưới nhé. Dùng Listbox thay thế combobox.
http://thuthuataccess.com/forum/thread-8426.html
Nếu bạn muốn tìm trực tiếp trên combo box thì theo cách dưới đây. Cách làm là cập nhật chuỗi tìm kiếm khi gõ phím trong combo box, đưa chuỗi đó vào chuỗi SQL, sau đó thay đổi RecordSource của ComboBox bằng câu lệnh SQL đó.
File ví dụ:
- Tạo table tblNhanVien (ID, HoTen)
- Form1 có combobox [cboHoTen] và code cho event On Change như sau:
Mã PHP:Private Sub cboHoTen_Change()
Dim strText, strFind As String
strText = Me.cboHoTen.Text
If Len(Trim(strText)) > 0 Then
strFind = "HoTen Like '"
Dim i As Integer
Dim strSQL As String
For i = 1 To Len(Trim(strText))
If (Right(strFind, 1) = "*") Then
strFind = Left(strFind, Len(strFind) - 1)
End If
strFind = strFind & "*" & Mid(strText, i, 1) & "*"
Next
strFind = strFind & "'"
strSQL = "SELECT tblNhanVien.ID, tblNhanVien.HoTen FROM tblNhanVien Where " & strFind & ";"
Me.cboHoTen.RowSource = strSQL
Else
strSQL = "SELECT tblNhanVien.ID, tblNhanVien.HoTen FROM tblNhanVien;"
Me.cboHoTen.RowSource = strSQL
End If
Me.cboHoTen.Dropdown
End Sub
File demo: TimKiemTrongComboBox.mdb
vucongpda > 21-05-16, 12:37 PM
ongke0711 > 21-05-16, 01:02 PM