Xin giúp đỡ tối ưu công thức tìm kiếm

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

Gà 123

Thành viên mới
Tham gia
26/4/23
Bài viết
24
Được thích
1
File của mình giờ đang sử dụng công thức như này vì mình tìm mãi không được công thức tối ưu nên nhờ các cao nhân giúp đỡ ạ.
Đại khái là mình cần vlookup giá trị nếu điều kiện chứa kí tự giống với kí tự trong bảng đã cho:

=IF(ISNUMBER(SEARCH("Mounter",C6)),"M",IF(ISNUMBER(SEARCH("L.D",C6)),"L",IF(ISNUMBER(SEARCH("Printer",C6)),"P",IF(ISNUMBER(SEARCH("AOI",C6)),"A",0))))

Các điều kiện của mình tương đối nhiều nên mong được giúp đỡ ạ
Xin cảm ơn
 
File của mình giờ đang sử dụng công thức như này vì mình tìm mãi không được công thức tối ưu nên nhờ các cao nhân giúp đỡ ạ.
Đại khái là mình cần vlookup giá trị nếu điều kiện chứa kí tự giống với kí tự trong bảng đã cho:

=IF(ISNUMBER(SEARCH("Mounter",C6)),"M",IF(ISNUMBER(SEARCH("L.D",C6)),"L",IF(ISNUMBER(SEARCH("Printer",C6)),"P",IF(ISNUMBER(SEARCH("AOI",C6)),"A",0))))

Các điều kiện của mình tương đối nhiều nên mong được giúp đỡ ạ
Xin cảm ơn
Không có file đưa lên biết tối ưu kiểu gì đây bạn
 
File đây ạ. Mình đại diện 1 số điều kiện, thực tế bảng của mình lớn hơn.
Bạn thử công thức xem có đúng ý bạn không nhé

D2=INDEX($G$2:$G$4,MATCH(MAX(MMULT(N(ISNUMBER(SEARCH(TRANSPOSE(MID(B2,ROW(INDIRECT("1:"&LEN(B2))),1)),$F$2:$F$4))),ROW(INDIRECT("1:"&LEN(B2)))^0)),MMULT(N(ISNUMBER(SEARCH(TRANSPOSE(MID(B2,ROW(INDIRECT("1:"&LEN(B2))),1)),$F$2:$F$4))),ROW(INDIRECT("1:"&LEN(B2)))^0),0))

Bạn tham khảo file đính kèm
 

File đính kèm

  • Tim kiem (5).xlsx
    11.5 KB · Đọc: 11
Các cao thủ có thể giúp e bài này dk ko ạ?. E dùng hàm vlookup, nhưng khi e nhập thêm giá trị thì nó lại nhảy theo. Giờ e muốn cố định nó khi e nhập vào ô đó thì lấy giá trị tại thời điểm đó thôi ạ. Help meee
 

File đính kèm

  • HOA EX.xlsx
    17.5 KB · Đọc: 11
Mình cũng mong được giúp về Tìm kiếm, hiện tại dùng Fillter nhưng lâu quá, muốn đc giúp để gõ luôn cái cần tìm.
Mình gửi file đính kèm (đã cắt bớt), mong đc giúp đỡ, xin cảm ơn ạ!
 

File đính kèm

  • Tim kiem.xlsx
    43.5 KB · Đọc: 9
Tạo 1 textbox, link với cell R1...
Viết 1 đoạn code khi textbox change...
Bạn thử đánh vào textbox 116
Back space 7...
Lui lại 8...
 

File đính kèm

  • Tim kiem117.xlsm
    51 KB · Đọc: 20
Tạo 1 textbox, link với cell R1...
Viết 1 đoạn code khi textbox change...
Bạn thử đánh vào textbox 116
Back space 7...
Lui lại 8...
Cảm ơn bạn, đúng như mình cần, vấn đề là cái file nó khá nặng, nên lúc nhập hoặc xoá dần số, nó loading liên tục file bị Not rêpnding xoay mòng mòng lun bạn ơi. Nhưng dù sao có cũng hơn không, xin bạn đoạn code mình chèn vào file gốc với. Thanks
 
Đoạn code nằm trong backend của file ; alt + F11; double click sheet1(FIND) để mở CODE.
Mã:
Private Sub TextBox1_Change()
        ActiveSheet.Range("a2:q10000").AutoFilter Field:=1, Criteria1:=[r1] & "*"
End Sub
Để cải thiện tốc độ bạn hãy chuyển Data sang table tên TongHop và thay bằng đoạn code sau:
Mã:
'Taoj textbox taij trang, link cell R1
'table: TongHop

Private Sub TextBox1_Change()
        ActiveSheet.ListObjects("TongHop").Range.AutoFilter Field:=1, Criteria1:="*" & [R1] & "*"
End Sub
Lúc này bạn chỉ cần type 67
 
Lần chỉnh sửa cuối:
Đoạn code nằm trong backend của file ; alt + F11; double click sheet1(FIND) để mở CODE.
Mã:
Private Sub TextBox1_Change()
        ActiveSheet.Range("a2:q10000").AutoFilter Field:=1, Criteria1:=[r1] & "*"
End Sub
Để cải thiện tốc độ bạn hãy chuyển Data sang table tên TongHop và thay bằng đoạn code sau:
Mã:
'Taoj textbox taij trang, link cell R1
'table: TongHop

Private Sub TextBox1_Change()
        ActiveSheet.ListObjects("TongHop").Range.AutoFilter Field:=1, Criteria1:="*" & [R1] & "*"
End Sub
Lúc này bạn chỉ cần type 67

Ok rồi bạn ơi, Cảm ơn ban nhiều. Cải thiện tốc độ đc thêm 50%, nhg cũng đỡ hơn trc chút
mình mò nốt cái cho nó hiện kèm theo cả Trước + Sau xem sao. ví du giờ gõ tìm 1115 nó chỉ lên các hàng có 1115, ok. Nhưng mình muốn nó hiện thêm phía trên là 1114 và dưới là 1116 nữa hiện lần lượt kể cả các hàng trùng, chứ ko xen lẫn vào nhau,
 
Lần chỉnh sửa cuối:
Web KT
Back
Top Bottom