Nhờ viết giúp code tìm chuỗi và trả kết quả theo điều kiện (1 người xem)

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

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

Blad01

Thành viên thường trực
Tham gia
6/10/07
Bài viết
350
Được thích
28
Trong Form có 2 ComboBox 1 và 2. Mong mọi người giúp em vấn đề sau:

Nhập thông tin bất kỳ vào ComboBox 1, nếu trong chuỗi vừa nhập có một trong các từ hoặc cụm từ sau: ban thường vụ; thường trực; BTV; TT (không phân biệt chữ hoa, thường). Thì ở ComboBox 2 sẽ tự động hiện thông tin: Đảng ủy cơ sở, BTV đảng ủy cơ sở.

Trân trọng cảm ơn!
 

File đính kèm

Lần chỉnh sửa cuối:
Trong Form có 2 ComboBox 1 và 2. Mong mọi người giúp em vấn đề sau:

Nhập thông tin bất kỳ vào ComboBox 1, nếu trong chuỗi vừa nhập có một trong các từ hoặc cụm từ sau: ban thường vụ; thường trực; BTV; TT (không phân biệt chữ hoa, thường). Thì ở ComboBox 2 sẽ tự động hiện thông tin: Đảng ủy cơ sở, BTV đảng ủy cơ sở.

Trân trọng cảm ơn!
Cái file Excel của bạn có cái Form nào đâu hở
 
Upvote 0
Xin lỗi, em đăng bài mà không kiểm tra lại file. Em đã gửi lại file ở #1 rồi. Anh chị giúp em nhé.
Bạn thêm đoạn code này vào Form thử xem.
Mã:
Private Sub ComboBox1_Change()
Dim k As String
k = UCase(ComboBox1.Value)
ComboBox2.Clear
If k Like "*BTV*" Or k Like "*TT*" Or k Like "*" & UCase("ban thý" & ChrW(7901) & "ng v" & ChrW(7909)) & "*" Or k Like "*" & UCase("thý" & ChrW(7901) & "ng tr" & ChrW(7921) & "c") & "*" Then
    ComboBox2.AddItem "Ð" & ChrW(7843) & "ng " & ChrW(7911) & "y cõ s" & ChrW(7903)
    ComboBox2.AddItem "BTV ð" & ChrW(7843) & "ng " & ChrW(7911) & "y cõ s" & ChrW(7903)
End If
End Sub
 
Upvote 0
Cảm ơn bác nhiều, cách này đã cơ bản giải quyết được vấn đề của em rồi. Nhưng nếu có nhiều điều kiện hơn thì code rất dài và khó quản lý. Vậy có cách nào viết code ngắn hơn không.
Em đã thử dùng hàm instr nhưng code chạy rất chậm, và chưa thực hiện được như ý theo các điều kiện đã đặt ra. Mong mọi người tiếp tục giúp đỡ.
 
Upvote 0
Cảm ơn bác nhiều, cách này đã cơ bản giải quyết được vấn đề của em rồi. Nhưng nếu có nhiều điều kiện hơn thì code rất dài và khó quản lý. Vậy có cách nào viết code ngắn hơn không.
Em đã thử dùng hàm instr nhưng code chạy rất chậm, và chưa thực hiện được như ý theo các điều kiện đã đặt ra. Mong mọi người tiếp tục giúp đỡ.
Tôi cố tình viết vậy để bạn thấy rằng hỏi phải đúng thực tế, có file mẫu để dễ thao tác chứ nói kiểu này thì viết thêm 10 bài nửa vẫn chưa làm rõ được vấn đề.
 
Upvote 0
Vấn đề em hỏi đang đúng thực tế em phải làm bác ạ. Ví dụ: có một textbox hoặc combobox dùng để nhập chức vụ, đơn vị công tác của đảng viên. Em không thể làm một list liệt kê hết chức vụ, đơn vị công tác của đảng viên được vì vậy phải phỏng đoán, liệt kê những cụm từ thường hay xuất hiện trong chức vụ đơn vị công tác để cho tự động hiển thị theo điều kiện. Như file ở #1 nêu.
 
Upvote 0
Vấn đề em hỏi đang đúng thực tế em phải làm bác ạ. Ví dụ: có một textbox hoặc combobox dùng để nhập chức vụ, đơn vị công tác của đảng viên. Em không thể làm một list liệt kê hết chức vụ, đơn vị công tác của đảng viên được vì vậy phải phỏng đoán, liệt kê những cụm từ thường hay xuất hiện trong chức vụ đơn vị công tác để cho tự động hiển thị theo điều kiện. Như file ở #1 nêu.
Vậy làm sao tôi biết điều kiện phỏng đoán của bạn là gì mà tôi đoán cho đúng đây, chính vì vậy tôi mới viết theo kiểu phỏng đoán theo cách của tôi. Bạn phải có danh sách phỏng đoán (danh sách này dùng cho combobox1 của bạn) ở một cột nào đó, tiếp theo sẽ có thêm cột nửa là danh sách chọn (Combobox2 của bạn) điều kiện thỏa mãn, dựa vào danh sách này thì sẽ duyệt xem xét điều kiện.
 
Upvote 0
Cảm ơn bác, em cũng đang nghĩ như bác nhưng không làm combobox mà cho vào sheet phụ trợ. Mục đích của em muốn tham khảo cách biết code của mọi người và từ đó học hỏi và tự làm vào file chính của mình. Cảm ơn bác đã tận tình giúp đỡ. Bác có thể viết giúp em đoạn code nào đó gọn hơn cách trên được ko
 
Upvote 0
Bạn xem lại và áp dụng vào file của bạn thử xem.
 

File đính kèm

Upvote 0
Bạn xem lại và áp dụng vào file của bạn thử xem.
Code không chạy bác ạ, đoạn này:
Mã:
If k Like "*" & arr(i, 1) & "*" Then        ComboBox2.RowSource = "ds"
        Exit Sub
em chưa hiểu sao không dùng như vầy:
Mã:
If k Like "*" & arr(i, 1) & "*" Then        me.ComboBox2.listIndex = 1
    Exit Sub
thì không cần phải danh sách nữa. Vì trong file đính kèm em đã tạo list cho comboBox2 rồi ạ.

Bác xem lại giúp em.
 
Upvote 0
Tùy bạn sử dụng thôi, có khi bạn thích dùng listindex còn tôi thì thích rowsource thôi.
 
Upvote 0
Web KT

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

Back
Top Bottom