Pastikan VBA (macro) boleh bekerja.
Public Function LookUpJoin(vNilai As Variant, rngData As Range, _
Optional lKeyOffset As Long = 1, _
Optional lDataOffset As Long = 2, _
Optional sDelimiter As String = ",") As String
Dim sRes As String
Dim rng As Range
LookUpJoin = vbNullString
For Each rng In rngData.Resize(, 1).Offset(, lKeyOffset - 1)
If rng.Value = vNilai Then
sRes = sRes & rng.Offset(, lDataOffset - lKeyOffset).Value & sDelimiter
End If
Next rng
If LenB(sRes) <> 0 Then
LookUpJoin = Left$(sRes, Len(sRes) - Len(sDelimiter))
End If
End Function
Cara pakai seperti fungsi built-in Excel yang lain, syaratnya module standard yang berisi prosedur fungsi LookUpJoin harus ada di file tersebut.
Save as file berekstensi xla atau xlam agar menjadi add-in, dan harus diaktifkan. Sayangnya, untuk komputer lain, harus punya file ini dan mengaktifkan add-in untuk file ini.
Contoh pemakaian di cell H9 :
=LookUpJoin(F9,$L$8:$N$14,2,1,";")
Melakukan lookup dan menggabungkan hasilnya (LookUpJoin) berdasar nilai di F9 pada tabel L8:N14 yang tetap (ada absolut reference), dengan kolom kunci adalah kolom ke-2 di tabel L8:N14 dan kolom data yang akan diambil adalah kolom ke-1 di tabel L8:N14, dengan pemisah antar item yang didapat adalah karakter titik koma (";")
Regard,
Kid.
2011/5/5 <sandiwan.prihanto@sandoz.com>
Dh Dewa-dewi xl mania,
Saya punya permasalahan dengan vlookup, saya ingin menangkap data namun datanya lebih dari satu: Berikut saya sertakan contohnya,
Best regards, Sandiwan P Sandiwan Prihanto
PT. Sandoz Indonesia
Planner
PT. Sandoz Indonesia
Jl. TB. Simatupang
Kp. Gedong, Pasar Rebo
Jakarta Timur 13760
Indonesia
Phone: +622130014200 ext.471
Cell: +6281808909044
Email : sandiwan.prihanto@sandoz.com
Web : http://www.sandoz.com
Nenhum comentário:
Postar um comentário