Mình cần tư vấn hàm tìm kiếm

Liên hệ QC

Canh thịt

Thành viên mới
Tham gia
7/2/22
Bài viết
4
Được thích
0
Mình có 1 sheet trong đó có cột A danh sách xã huyện tỉnh thành phố 10000 dòng
Vd : xã khánh thượng huyện văn bàn tỉnh lào cai
: Phường 13 quận 6 thành phố hồ chí minh
Giờ mình muốn nhập vào 1 ô là B2 (78 đường aaaa khánh thượng văn bàn) thì ở ô Cột C nó hiện xã khánh thượng huyện văn bàn tỉnh lào cai
Hoặc nhập 777 đường aaa p13 q6 thì cột C hiện phường 13 quận 6 thành phố hồ chí minh hoặc 1 loạt các kết quả có thành phần gần đúng nhất thì mình dùng cách nào ạ
 
Mình có 1 sheet trong đó có cột A danh sách xã huyện tỉnh thành phố 10000 dòng
Vd : xã khánh thượng huyện văn bàn tỉnh lào cai
: Phường 13 quận 6 thành phố hồ chí minh
Giờ mình muốn nhập vào 1 ô là B2 (78 đường aaaa khánh thượng văn bàn) thì ở ô Cột C nó hiện xã khánh thượng huyện văn bàn tỉnh lào cai
Hoặc nhập 777 đường aaa p13 q6 thì cột C hiện phường 13 quận 6 thành phố hồ chí minh hoặc 1 loạt các kết quả có thành phần gần đúng nhất thì mình dùng cách nào ạ
Bạn thử đưa file mô tả lên coi nào
 
Bạn cho mình xin code cũng đc ạ
Thử code chỉ cần nhập từ cần tìm kiếm.
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
Application.EnableEvents = False
      Dim lr As Long, arr, i As Long, dk As String, s As String
      If Not Intersect(Target, Range("D2:D10000")) Is Nothing Then
         If Target.Count = 1 Then
            dk = UCase(Target.Value)
            lr = Range("C" & Rows.Count).End(xlUp).Row
            arr = Range("C2:C" & lr).Value
            For i = 1 To UBound(arr)
                If InStr(UCase(arr(i, 1)), dk) Then
                   s = s & ";" & arr(i, 1)
                End If
            Next i
          End If
      End If
  If Len(s) Then
     Target.Offset(, 1).Value = Right(s, Len(s) - 1)
  Else
     Target.Offset(, 1).Value = Empty
  End If
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
 
Thử code chỉ cần nhập từ cần tìm kiếm.
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
Application.EnableEvents = False
      Dim lr As Long, arr, i As Long, dk As String, s As String
      If Not Intersect(Target, Range("D2:D10000")) Is Nothing Then
         If Target.Count = 1 Then
            dk = UCase(Target.Value)
            lr = Range("C" & Rows.Count).End(xlUp).Row
            arr = Range("C2:C" & lr).Value
            For i = 1 To UBound(arr)
                If InStr(UCase(arr(i, 1)), dk) Then
                   s = s & ";" & arr(i, 1)
                End If
            Next i
          End If
      End If
  If Len(s) Then
     Target.Offset(, 1).Value = Right(s, Len(s) - 1)
  Else
     Target.Offset(, 1).Value = Empty
  End If
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
Tks bạn để mình thử
 
Web KT

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

Back
Top Bottom