Công Thức hoặc Code Vba thay thế cho hàm Vlookup (1 người xem)

Liên hệ QC

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

xinbintin

Thành viên mới
Tham gia
12/12/17
Bài viết
18
Được thích
5
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

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

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

Back
Top Bottom