Tạo combobox có chức năng tìm kiếm

Liên hệ QC

biboylenka1

Thành viên hay hỏi
Tham gia
13/5/21
Bài viết
109
Được thích
97
Giới tính
Nam
Em xin chào tất cả các anh/chị trong diễn đàn!
Em muốn nhờ anh/chị trong diễn đàn tạo giúp em một combobox có chức năng tìm kiếm để hỗ trợ việc nhập liệu.
Em có mô tả mong muốn và kết quả mong muốn trong file đính kèm.Rất mong nhận được sự giúp đỡ của anh chị.
Em xin cảm ơn!
 

File đính kèm

  • Vidu combobox.xlsm
    25.7 KB · Đọc: 27
Tra trên youtobe : Nhập liệu nâng cao Blusolf SQL sẽ ra thứ bạn muốn
 
Upvote 0
Em xin chào tất cả các anh/chị trong diễn đàn!
Em muốn nhờ anh/chị trong diễn đàn tạo giúp em một combobox có chức năng tìm kiếm để hỗ trợ việc nhập liệu.
Em có mô tả mong muốn và kết quả mong muốn trong file đính kèm.Rất mong nhận được sự giúp đỡ của anh chị.
Em xin cảm ơn!

Nếu vẫn còn quan tâm, thì thử xem sao. Hãy thêm nhiều dữ liệu vào và chạy thử.
Tôi phải dùng code tim kiếm thông minh của các anh trên diễn đàn GPE này để làm bài này. Nếu có ghé qua các anh cho góp ý với. Trân trọng
Bài đã được tự động gộp:

Còn muốn dùng combobox để nhập liệu thì đây.
 

File đính kèm

  • Vidu COMBOX (1).xlsm
    35.1 KB · Đọc: 53
  • Vidu combobox.xlsm
    29 KB · Đọc: 54
Lần chỉnh sửa cuối:
Upvote 0
Tôi ngại test quá, bạn tự kiểm tra.

Tôi đã đặt hộ ComboBox1 trên sheet NhapLieu, và thiết lập các thuộc tính sau của nó: ColumnCount, ColumnWidths, Height, ListWidth.

Để hiện ComboBox1 thì chọn ô trong cột D, để ẩn nó thì chọn ô ngoài cột D.

Thay cho ComboBox cũng có thể dùng TextBox + ListBox.

Toàn bộ code trong module Sheet1.
 

File đính kèm

  • Vidu combobox.xlsm
    28 KB · Đọc: 68
Upvote 0
Dùng TextBox + ListBox.

Có thể đúp chuột trên mục bất kỳ trong ListBox để chọn ghi mục đó. Cũng có thể dùng phím mũi tên lên xuống để chuyển tới mục cần chọn rồi Enter để chọn. Nếu đang ở TextBox mà nhấn mũi trên phải thì là chuyển sang ListBox. Nếu đang ở ListBox mà nhấn mũi tên trái thì là chuyển sang TextBox.
Khi chọn ghi một mục thì ô ngay dưới lại được chọn để tiếp tục nhập liệu. Nhập chán chê rồi thì chọn ô ngoài cột D để kết thúc.
 

File đính kèm

  • TextBoxListBox.xlsm
    36.2 KB · Đọc: 95
Upvote 0
Dùng TextBox + ListBox.

Có thể đúp chuột trên mục bất kỳ trong ListBox để chọn ghi mục đó. Cũng có thể dùng phím mũi tên lên xuống để chuyển tới mục cần chọn rồi Enter để chọn. Nếu đang ở TextBox mà nhấn mũi trên phải thì là chuyển sang ListBox. Nếu đang ở ListBox mà nhấn mũi tên trái thì là chuyển sang TextBox.
Khi chọn ghi một mục thì ô ngay dưới lại được chọn để tiếp tục nhập liệu. Nhập chán chê rồi thì chọn ô ngoài cột D để kết thúc.
Chú ơi, cháu thử rồi, kết quả như sau :
1) Gõ "Tha" tìm được như ảnh (OK)
1626504447797.png
Mong muốn:
2) Gõ "Thành" hoặc "Thà" hoặc "Long" thì không tìm thấy.
3) Xóa hết chuỗi cần tìm để gõ lại thì thông báo lỗi: "Could not set the List property. Invalid property value. "
3) Có tiêu đề trong danh sách tìm kiếm.
 
Lần chỉnh sửa cuối:
Upvote 0
Nếu vẫn còn quan tâm, thì thử xem sao. Hãy thêm nhiều dữ liệu vào và chạy thử.
Tôi phải dùng code tim kiếm thông minh của các anh trên diễn đàn GPE này để làm bài này. Nếu có ghé qua các anh cho góp ý với. Trân trọng
Bài đã được tự động gộp:

Còn muốn dùng combobox để nhập liệu thì đây.
Tôi ngại test quá, bạn tự kiểm tra.

Tôi đã đặt hộ ComboBox1 trên sheet NhapLieu, và thiết lập các thuộc tính sau của nó: ColumnCount, ColumnWidths, Height, ListWidth.

Để hiện ComboBox1 thì chọn ô trong cột D, để ẩn nó thì chọn ô ngoài cột D.

Thay cho ComboBox cũng có thể dùng TextBox + ListBox.

Toàn bộ code trong module Sheet1.
Dùng TextBox + ListBox.

Có thể đúp chuột trên mục bất kỳ trong ListBox để chọn ghi mục đó. Cũng có thể dùng phím mũi tên lên xuống để chuyển tới mục cần chọn rồi Enter để chọn. Nếu đang ở TextBox mà nhấn mũi trên phải thì là chuyển sang ListBox. Nếu đang ở ListBox mà nhấn mũi tên trái thì là chuyển sang TextBox.
Khi chọn ghi một mục thì ô ngay dưới lại được chọn để tiếp tục nhập liệu. Nhập chán chê rồi thì chọn ô ngoài cột D để kết thúc.
Em cảm ơn anh/chị đã nhiệt tình giúp đỡ!
 
Upvote 0
Dùng TextBox + ListBox.

Có thể đúp chuột trên mục bất kỳ trong ListBox để chọn ghi mục đó. Cũng có thể dùng phím mũi tên lên xuống để chuyển tới mục cần chọn rồi Enter để chọn. Nếu đang ở TextBox mà nhấn mũi trên phải thì là chuyển sang ListBox. Nếu đang ở ListBox mà nhấn mũi tên trái thì là chuyển sang TextBox.
Khi chọn ghi một mục thì ô ngay dưới lại được chọn để tiếp tục nhập liệu. Nhập chán chê rồi thì chọn ô ngoài cột D để kết thúc.
Em vừa dùng thử đúng là có thể sử dụng được phím tiện lợi hơn ạ.
Bài #8 ý 2)
2) Gõ "Thành" hoặc "Thà" hoặc "Long" thì không tìm thấy.
Thì em có sửa đoạn trong code của anh
Mã:
        text = TextBox1.Value & "*"
thành
Mã:
        text = "*" & TextBox1.Value & "*"
thì có thể tìm kiếm như ý.
Nhưng còn ý 3)
3) Xóa hết chuỗi cần tìm để gõ lại thì thông báo lỗi: "Could not set the List property. Invalid property value. "
Thì em vẫn không biết cách sửa,mong anh sửa giúp em lỗi này. Em xin cảm ơn anh rất nhiều!
 
Upvote 0
Mong muốn:
2) Gõ "Thành" hoặc "Thà" hoặc "Long" thì không tìm thấy.
Do người hỏi tìm theo Mô tả nên nếu tìm Thanh Long sấy hay Thanh long thì phải gõ Tha chứ không thể Th hoặc Thnh được.
Hiện thời code chỉ tìm các mục BẮT ĐẦU từ đoạn được gõ. Nếu muốn tìm mục có CHỨA cái được gõ ở vị trí bất kỳ thì
Trong Sub TextBox1_Change sửa
Mã:
text = TextBox1.Value & "*"

thành

Mã:
text = "*" & TextBox1.Value & "*"
3) Xóa hết chuỗi cần tìm để gõ lại thì thông báo lỗi: "Could not set the List property. Invalid property value. "
Nhầm

Trong Sub TextBox1_Change sửa
Mã:
ListBox1.List = Arr

thành

Mã:
ListBox1.List = dulieu
 
Upvote 0
Dùng TextBox + ListBox.

Có thể đúp chuột trên mục bất kỳ trong ListBox để chọn ghi mục đó. Cũng có thể dùng phím mũi tên lên xuống để chuyển tới mục cần chọn rồi Enter để chọn. Nếu đang ở TextBox mà nhấn mũi trên phải thì là chuyển sang ListBox. Nếu đang ở ListBox mà nhấn mũi tên trái thì là chuyển sang TextBox.
Khi chọn ghi một mục thì ô ngay dưới lại được chọn để tiếp tục nhập liệu. Nhập chán chê rồi thì chọn ô ngoài cột D để kết thúc.
Bác batman1 có thể hướng dẫn cách làm và ý nghĩa code với. Làm sao cột D ở bài 5 và bài 6 ô nào click vô cũng thấy dữ liệu hết. Mong bác có thể hướng dẫn giùm.
 
Upvote 0
Do người hỏi tìm theo Mô tả nên nếu tìm Thanh Long sấy hay Thanh long thì phải gõ Tha chứ không thể Th hoặc Thnh được.
Hiện thời code chỉ tìm các mục BẮT ĐẦU từ đoạn được gõ. Nếu muốn tìm mục có CHỨA cái được gõ ở vị trí bất kỳ thì
Trong Sub TextBox1_Change sửa
Mã:
text = TextBox1.Value & "*"

thành

Mã:
text = "*" & TextBox1.Value & "*"

Nhầm

Trong Sub TextBox1_Change sửa
Mã:
ListBox1.List = Arr

thành

Mã:
ListBox1.List = dulieu
Sửa theo chú chỉ,các vấn đề trên đã không còn xảy ra.
Thêm một vấn đề nữa là danh sách tìm kiếm kích thước lúc to nhỏ, không ổn định:
1626514501774.png

1626514468635.png
1626514792750.png
Nếu có thể mong chú phát triển thêm tìm kiếm nhiều cột
Ví dụ nhập 3 thì sẽ tìm trong 4 cột trong danh sách xem cột nào có số 3:
1626515109577.png
 
Upvote 0
Nếu có thể mong chú phát triển thêm tìm kiếm nhiều cột
1. Thêm module vd. Module1 và dán code vào module.
Mã:
Option Explicit

Sub FindMultiCol_to_ListBox(ByVal findvalue, ByVal ignorecase As Boolean, ByVal matchstr As String, data, ListBox As Object, ParamArray cols())
'    - tim findvalue trong mang 2 chieu data, ket qua nhap vao ListBox. Truoc khi tim thi cac muc trong ListBox duoc xoa.
'    - findvalue: gia tri can tim
'    - data: mang 2 chieu
'    - ListBox: ListBox voi cac muc duoc tim thay
'    - cols la danh sach chi so cac cot can tim trong mang data duoc phan cach boi dau phay. Cac chi so cot phai duoc tinh
'    tu 1 cho du chi so cot trong mang duoc tinh tu dau. Vd. mang data co chi so cot duoc tinh tu 3 den 7 vd. data(1 to 100, 3 to 7)
'    thi neu ta muon tim kiem trong cot dau tien cua mang data thi ta truyen 1 chu khong phai la truyen 3.
'    Neu tim tat ca cac cot cua mang data thi ngoai cach liet ke chi so cua tat ca cac cot cung co the khong truyen cols.
'    Tuc neu bo qua cols thi hieu la tim tat ca cac cot
'    ignorecase = True la khong phan biet chu hoa chu thuong
'    matchstr = "" la tim dung
'    matchstr = "<" la tim voi findvalue la doan dau
'    matchvalue = ">" la tim voi findvalue la doan cuoi
'    matchstr khac "", "<", ">" la tim voi findvalue o vi tri bat ky
Dim r As Long, k As Long, count As Long, c, value_, chiso, result()
    ListBox.Clear
    On Error GoTo end_
    If ignorecase Then findvalue = LCase(findvalue)
    If matchstr = "<" Then
        findvalue = findvalue & "*"
    ElseIf matchstr = ">" Then
        findvalue = "*" & findvalue
    ElseIf matchstr <> "" Then
        findvalue = "*" & findvalue & "*"
    End If
    If UBound(cols) = -1 Then
        ReDim chiso(1 To UBound(data, 2) - LBound(data, 2) + 1)
        For c = 1 To UBound(chiso)
            chiso(c) = c
        Next c
    Else
        chiso = cols
    End If
    For r = LBound(data) To UBound(data)
        For Each c In chiso
            If ignorecase Then
                value_ = LCase(data(r, LBound(data, 2) + c - 1))
            Else
                value_ = data(r, LBound(data, 2) + c - 1)
            End If
            If value_ Like findvalue Then
                count = count + 1
                ReDim Preserve result(LBound(data, 2) To UBound(data, 2), 1 To count)
                For k = LBound(data, 2) To UBound(data, 2)
                    result(k, count) = data(r, k)
                Next k
                Exit For
            End If
        Next c
    Next r
    If count Then ListBox.Column = result
end_:
End Sub

2. Code Private Sub TextBox1_Change mới
Mã:
Private Sub TextBox1_Change()
    If khong_lam Then Exit Sub
    ListBox1.Clear
    If TextBox1.Value = "" Then
        ListBox1.List = dulieu
    Else
        FindMultiCol_to_ListBox TextBox1.Value, False, "*", dulieu, ListBox1
    End If
End Sub

3. Đọc kỹ hướng dẫn trong FindMultiCol_to_ListBox.

Trong điểm 2 là tìm đoạn trong TextBox1 ở vị trí bất kỳ, không phân biết chữ hoa hay thường, tìm trong tất cả các cột.

Nếu là vd. tìm đoạn trong TextBox1 ở vị trí ĐẦU, CÓ phân biết chữ hoa hay thường, tìm trong cột thứ 2 và thứ 3 thì

FindMultiCol_to_ListBox TextBox1.Value, TRUE, "<", dulieu, ListBox1, 2, 3
 
Upvote 0
1. Thêm module vd. Module1 và dán code vào module.
Mã:
Option Explicit

Sub FindMultiCol_to_ListBox(ByVal findvalue, ByVal ignorecase As Boolean, ByVal matchstr As String, data, ListBox As Object, ParamArray cols())
'    - tim findvalue trong mang 2 chieu data, ket qua nhap vao ListBox. Truoc khi tim thi cac muc trong ListBox duoc xoa.
'    - findvalue: gia tri can tim
'    - data: mang 2 chieu
'    - ListBox: ListBox voi cac muc duoc tim thay
'    - cols la danh sach chi so cac cot can tim trong mang data duoc phan cach boi dau phay. Cac chi so cot phai duoc tinh
'    tu 1 cho du chi so cot trong mang duoc tinh tu dau. Vd. mang data co chi so cot duoc tinh tu 3 den 7 vd. data(1 to 100, 3 to 7)
'    thi neu ta muon tim kiem trong cot dau tien cua mang data thi ta truyen 1 chu khong phai la truyen 3.
'    Neu tim tat ca cac cot cua mang data thi ngoai cach liet ke chi so cua tat ca cac cot cung co the khong truyen cols.
'    Tuc neu bo qua cols thi hieu la tim tat ca cac cot
'    ignorecase = True la khong phan biet chu hoa chu thuong
'    matchstr = "" la tim dung
'    matchstr = "<" la tim voi findvalue la doan dau
'    matchvalue = ">" la tim voi findvalue la doan cuoi
'    matchstr khac "", "<", ">" la tim voi findvalue o vi tri bat ky
Dim r As Long, k As Long, count As Long, c, value_, chiso, result()
    ListBox.Clear
    On Error GoTo end_
    If ignorecase Then findvalue = LCase(findvalue)
    If matchstr = "<" Then
        findvalue = findvalue & "*"
    ElseIf matchstr = ">" Then
        findvalue = "*" & findvalue
    ElseIf matchstr <> "" Then
        findvalue = "*" & findvalue & "*"
    End If
    If UBound(cols) = -1 Then
        ReDim chiso(1 To UBound(data, 2) - LBound(data, 2) + 1)
        For c = 1 To UBound(chiso)
            chiso(c) = c
        Next c
    Else
        chiso = cols
    End If
    For r = LBound(data) To UBound(data)
        For Each c In chiso
            If ignorecase Then
                value_ = LCase(data(r, LBound(data, 2) + c - 1))
            Else
                value_ = data(r, LBound(data, 2) + c - 1)
            End If
            If value_ Like findvalue Then
                count = count + 1
                ReDim Preserve result(LBound(data, 2) To UBound(data, 2), 1 To count)
                For k = LBound(data, 2) To UBound(data, 2)
                    result(k, count) = data(r, k)
                Next k
                Exit For
            End If
        Next c
    Next r
    If count Then ListBox.Column = result
end_:
End Sub

2. Code Private Sub TextBox1_Change mới
Mã:
Private Sub TextBox1_Change()
    If khong_lam Then Exit Sub
    ListBox1.Clear
    If TextBox1.Value = "" Then
        ListBox1.List = dulieu
    Else
        FindMultiCol_to_ListBox TextBox1.Value, False, "*", dulieu, ListBox1
    End If
End Sub

3. Đọc kỹ hướng dẫn trong FindMultiCol_to_ListBox.

Trong điểm 2 là tìm đoạn trong TextBox1 ở vị trí bất kỳ, không phân biết chữ hoa hay thường, tìm trong tất cả các cột.

Nếu là vd. tìm đoạn trong TextBox1 ở vị trí ĐẦU, CÓ phân biết chữ hoa hay thường, tìm trong cột thứ 2 và thứ 3 thì

FindMultiCol_to_ListBox TextBox1.Value, TRUE, "<", dulieu, ListBox1, 2, 3
Cháu cảm thấy hơn cả trong phim, cảm ơn chú nhiều.
Còn mấy điểm sau cháu xin được bày tỏ nốt:
1. Cần có tiêu đề trong danh sách tìm kiếm.
2. Đối với ô có dữ liệu rồi không hiển thị các listbox tìm kiếm vì hiển thị lên không xóa được dữ liệu cữ, hoặc đối với với những ô có dữ liệu rồi thì khi vào trong listbox tìm kiếm sẽ hiển thị dữ liệu của ô đó, khi xóa thì cả dòng đó cũng sẽ xóa.
3.chọn toàn bộ bảng tính lỗi "Overflow"
 
Lần chỉnh sửa cuối:
Upvote 0
Do người hỏi tìm theo Mô tả nên nếu tìm Thanh Long sấy hay Thanh long thì phải gõ Tha chứ không thể Th hoặc Thnh được.
Hiện thời code chỉ tìm các mục BẮT ĐẦU từ đoạn được gõ. Nếu muốn tìm mục có CHỨA cái được gõ ở vị trí bất kỳ thì
Trong Sub TextBox1_Change sửa
Vâng. Vì thực tế có quá nhiều mã nên em chỉ nhớ một phần mô tả nên cá nhân em chỉ cần tìm kiếm theo mô tả là đã đúng mong muốn.
Trong Sub TextBox1_Change sửa
Mã:
ListBox1.List = Arr
thành

Mã:
ListBox1.List = dulieu
Em đã sửa được. code vượt ngoài mong muốn của em. Em xin cảm ơn anh rất nhiều!!
 
Upvote 0
Còn mấy điểm sau cháu xin được bày tỏ nốt:
1. Cần có tiêu đề trong danh sách tìm kiếm.
Thêm dòng tiêu đề không phải là khó nhưng thường người dùng nhìn và biết những cột nhập liệu của mình. Công việc hàng ngày của người ta mà.

2. Đối với ô có dữ liệu rồi không hiển thị các listbox tìm kiếm vì hiển thị lên không xóa được dữ liệu cữ, hoặc đối với với những ô có dữ liệu rồi thì khi vào trong listbox tìm kiếm sẽ hiển thị dữ liệu của ô đó, khi xóa thì cả dòng đó cũng sẽ xóa.

Tại sao không? Vô lý thế. Nếu người ta chọn sai, hoặc chọn xong rồi đổi ý, thì phải cho họ sửa chứ. Còn đã sửa thì phải sửa cả dòng chứ ai lại sửa mỗi 1 cột? Để râu ông nọ, vd. "Táo", cắm cằm bà kia, vd. 100001? Còn chuyện xóa thì cũng xóa cả dòng, và không click vào ô đang có dữ liệu. Muốn xóa thì chọn cả dòng (> 1 ô) rồi nhấn DELETE thôi.

3.chọn toàn bộ bảng tính lỗi "Overflow"
Thực ra tôi không hiểu được nhu cầu chọn toàn bộ bảng tính. Dù thao tác rộng bao nhiêu, hàng triệu dòng hay hàng nghìn cột, nhưng có ai dùng toàn bộ bảng tính?

Trong Sub Worksheet_SelectionChange sửa
Mã:
If Target.count = 1 And Not Intersect(Target, [D5:D10000]) Is Nothing Then
... code
End If

thành

Mã:
If Target.Rows.count < 10 ^ 6 Then
    If Target.count = 1 And Not Intersect(Target, [D5:D10000]) Is Nothing Then
        ... code
    End If
End If

Code tôi viết hay ai viết cũng thế thôi. Người ta có đánh giá của người ta, có chủ ý của người ta. Dùng được thì dùng chứ nếu sửa theo yêu cầu thì sẽ không bao giờ kết thúc. 10, 100, 1000 người thì bằng ấy nhu cầu.
 
Upvote 0
Thêm dòng tiêu đề không phải là khó nhưng thường người dùng nhìn và biết những cột nhập liệu của mình. Công việc hàng ngày của người ta mà.



Tại sao không? Vô lý thế. Nếu người ta chọn sai, hoặc chọn xong rồi đổi ý, thì phải cho họ sửa chứ. Còn đã sửa thì phải sửa cả dòng chứ ai lại sửa mỗi 1 cột? Để râu ông nọ, vd. "Táo", cắm cằm bà kia, vd. 100001? Còn chuyện xóa thì cũng xóa cả dòng, và không click vào ô đang có dữ liệu. Muốn xóa thì chọn cả dòng (> 1 ô) rồi nhấn DELETE thôi.


Thực ra tôi không hiểu được nhu cầu chọn toàn bộ bảng tính. Dù thao tác rộng bao nhiêu, hàng triệu dòng hay hàng nghìn cột, nhưng có ai dùng toàn bộ bảng tính?

Trong Sub Worksheet_SelectionChange sửa
Mã:
If Target.count = 1 And Not Intersect(Target, [D5:D10000]) Is Nothing Then
... code
End If

thành

Mã:
If Target.Rows.count < 10 ^ 6 Then
    If Target.count = 1 And Not Intersect(Target, [D5:D10000]) Is Nothing Then
        ... code
    End If
End If

Code tôi viết hay ai viết cũng thế thôi. Người ta có đánh giá của người ta, có chủ ý của người ta. Dùng được thì dùng chứ nếu sửa theo yêu cầu thì sẽ không bao giờ kết thúc. 10, 100, 1000 người thì bằng ấy nhu cầu.

Chào anh Batman ạ.
Hôm em có tham khảo 1 bài viết khác của anh về Listbox ở một bài viết khác.
Em muốn tạo 1 Listbox ở ô B4 theo danh sách ở vùng N3:N17 nhưng mà không được.
Anh có thể hướng dẫn em được không ạ.
Em cảm ơn anh.

1629544665009.png
 

File đính kèm

  • Danh sach chon.xlsm
    55 KB · Đọc: 8
Upvote 0
Chào anh Batman ạ.
Hôm em có tham khảo 1 bài viết khác của anh về Listbox ở một bài viết khác.
Nếu thế thì bắt chước thôi. Đính kèm code đó, có chỗ nào không hiểu thì hỏi. Tôi cũng không nhớ rõ là tôi đã viết khi nào, ở đâu. Mà chắc gì tôi chỉ ra đúng bài mà bạn đang viết về nó.
Em muốn tạo 1 Listbox ở ô B4 theo danh sách ở vùng N3:N17 nhưng mà không được.
Anh có thể hướng dẫn em được không ạ.
Muốn gì thì cũng phải mô tả, nêu yêu cầu, cách vận hành ListBox. Vd.: khi tôi click ở đây ... thì ListBox xuất hiện ở kia ..., khi tôi gõ vài ký tự ở bển ... thì có gì đó động đậy (?) trong ListBox (?), còn khi ... thỉ ...

Có gì đó liên quan tới tìm kiếm trong ListBox? Gõ đoạn tìm kiếm ở đâu? Ở ngay trong ô B4 (và luôn luôn chỉ trong B4?) hay thêm TextBox và gõ ở TextBox?

Tôi không cố đoán những cái bạn đang nghĩ trong đầu.
 
Upvote 0
Nếu thế thì bắt chước thôi. Đính kèm code đó, có chỗ nào không hiểu thì hỏi. Tôi cũng không nhớ rõ là tôi đã viết khi nào, ở đâu. Mà chắc gì tôi chỉ ra đúng bài mà bạn đang viết về nó.

Muốn gì thì cũng phải mô tả, nêu yêu cầu, cách vận hành ListBox. Vd.: khi tôi click ở đây ... thì ListBox xuất hiện ở kia ..., khi tôi gõ vài ký tự ở bển ... thì có gì đó động đậy (?) trong ListBox (?), còn khi ... thỉ ...

Có gì đó liên quan tới tìm kiếm trong ListBox? Gõ đoạn tìm kiếm ở đâu? Ở ngay trong ô B4 (và luôn luôn chỉ trong B4?) hay thêm TextBox và gõ ở TextBox?

Tôi không cố đoán những cái bạn đang nghĩ trong đầ
Nếu thế thì bắt chước thôi. Đính kèm code đó, có chỗ nào không hiểu thì hỏi. Tôi cũng không nhớ rõ là tôi đã viết khi nào, ở đâu. Mà chắc gì tôi chỉ ra đúng bài mà bạn đang viết về nó.

Muốn gì thì cũng phải mô tả, nêu yêu cầu, cách vận hành ListBox. Vd.: khi tôi click ở đây ... thì ListBox xuất hiện ở kia ..., khi tôi gõ vài ký tự ở bển ... thì có gì đó động đậy (?) trong ListBox (?), còn khi ... thỉ ...

Có gì đó liên quan tới tìm kiếm trong ListBox? Gõ đoạn tìm kiếm ở đâu? Ở ngay trong ô B4 (và luôn luôn chỉ trong B4?) hay thêm TextBox và gõ ở TextBox?

Tôi không cố đoán những cái bạn đang nghĩ trong đầu.
Dạ, luôn luôn chỉ trong ô B4 ạ.
Em xin lỗi vì giải thích thiếu thông tin ạ.
Em sẽ tìm hiểu hơn nữa ạ.
 
Upvote 0
Web KT

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

Back
Top Bottom