Pada materi sebelumnya kita sudah menyinggung bagaimana membuat User Defined Function (UDF) untuk TEXTJOIN.
Rumus TEXTJOIN sendiri baru hadir di versi Office 2019 keatas.
Tapi nyatanya banyak pengguna office lama ingin menggunakan rumus ini di Excel mereka.
Nah kali ini, saya akan coba gabungkan antara Rumus TEXJOIN dan IF agar menjadi satu UDF saja.
Untuk lebih mudahnya, kasus ini adalah untuk menggabungkan isi Cells dengan Kriteria tertentu yang sama.
Jika tanpa UDF umumnya rumus ini menggunakan FILTER dan TEXTJOIN atau TEXTJOIN dan IF dengan Array.
Mari kita lihat contoh kasusnya.

Pada Gambar diatas, saya ingin menggabungkan text pada area data buah dengan kriteria berdasarkan Item Kode.
Untuk menyelsaikan hal ini, untuk versi Office yang tidak memiliki rumus TEXTJOIN dan FILTER bisa menggunakan UDF ini.
Untuk membuat UDF langkah-langkahnya sama seperti yang sudah saya jelaskan di materi materi sebelumnya.
Tambahkan script berikut ini kedalam Module.
Function JOINIF(CriteriaRange As Range, Criteria As Variant, _
GabungRange As Range, Optional Delimiter As String = ",") As Variant
'-----------------------------------------
' Sctipt VBA : Textjoin IF
' Author : https://vba.co.id
' Situs belajar VBA No.1
' di Indonesia
'-----------------------------------------
Dim j As Long
Dim TempString As String: TempString = ""
On Error GoTo Kesalahan
If CriteriaRange.Count <> GabungRange.Count Then
JOINIF = CVErr(xlErrRef)
Exit Function
End If
For j = 1 To CriteriaRange.Count
If CriteriaRange.Cells(j).Value = Criteria Then
TempString = TempString & Delimiter & GabungRange.Cells(j).Value
End If
Next j
If Not TempString = "" Then
TempString = Mid(TempString, Len(Delimiter) + 1)
End If
JOINIF = TempString
Exit Function
Kesalahan:
JOINIF = CVErr(xlErrValue)
End Function
Untuk penggunaan rumus ini menggunakan notasi rumus
=JOINIF(KriteriaRange, Kriteria, RangeGabung , [Delimeter] )
Berikut ini adalah contoh penggunaan rumus dari UDF JOINIF

Tentunya dengan adanya UDF ini rumus bisa dibuat dengan mudah.