Công Thức hoặc Code Vba thay thế cho hàm Vlookup

Liên hệ QC

xinbintin

Thành viên mới
Tham gia
12/12/17
Bài viết
18
Được thích
3
Hi mọi nhờ mọi người giúp em một công thức hoặc một code thay thế cho em vlookup trong trường hợp sau:

em có một bảng danh sách gồm các mã trạm giống nhau , số hợp đồng giống nhau, hoặc có mã trạm giống nhau và số hợp đồng khác nhau. Nếu bình thường sử dụng công thức vlookup thì nó chỉ hiển thị giá trị tìm kiếm một lần. Giả sử Mã trạm aaa giá trị cần lấy là 123 nếu dùng vlookup thì ok . Nhưng ở đây bảng tính của em có 2 mã trạm là ví dụ aaa giá trị 123 và aaa giá trị 456 như vậy nếu dùng vlookup thì chỉ cho kết quả là 123 , nhưng kết quả em cần tìm là 123 và 456 . Vì vậy nhờ mọi người hỗ trợ em với ạ
 

File đính kèm

  • hàm thay thế vlooclckup.xlsx
    10.9 KB · Đọc: 21
Hi mọi nhờ mọi người giúp em một công thức hoặc một code thay thế cho em vlookup trong trường hợp sau:

em có một bảng danh sách gồm các mã trạm giống nhau , số hợp đồng giống nhau, hoặc có mã trạm giống nhau và số hợp đồng khác nhau. Nếu bình thường sử dụng công thức vlookup thì nó chỉ hiển thị giá trị tìm kiếm một lần. Giả sử Mã trạm aaa giá trị cần lấy là 123 nếu dùng vlookup thì ok . Nhưng ở đây bảng tính của em có 2 mã trạm là ví dụ aaa giá trị 123 và aaa giá trị 456 như vậy nếu dùng vlookup thì chỉ cho kết quả là 123 , nhưng kết quả em cần tìm là 123 và 456 . Vì vậy nhờ mọi người hỗ trợ em với ạ
Bạn thử.
Mã:
Function laygiatri(ByVal dk As String, ByVal mang As Range, ByVal so As Integer) As String
         Dim arr, i As Long, s As String
         arr = mang.Value
         For i = 1 To UBound(arr)
             If UCase(arr(i, 1)) = UCase(dk) Then
                s = s & ";" & arr(i, so)
             End If
         Next i
            If Len(s) Then laygiatri = Right(s, Len(s) - 1) Else laygiatri = "khong tim thay"
End Function
Mã:
=laygiatri(J9,$C$10:$E$17,2)
 
Web KT
Back
Top Bottom