Menggabungkan Banyak Text Sesuai Dengan Kriteria di Excel

Gabung Text dengan kriteria

Penggabungan TEXT atau Concatenating sangat mudah dilakukan di Excel salah satunya dengan menggunakan operator “&” atau menggunakan rumus CONCATENATE. Tapi sayangnya rumus ini masih memiliki kekurangan yaitu hanya bisa menggabungkan TEXT antar Cells saja atau dengan TEXT manual yang diinputkan, tidak bisa menggabungkan TEXT dalam gabungan Cells.

Dari beberapa kasus yang ditemui ada beberapa yang berusaha menggabungkan sebuah TEXT dengan kriteria tertentu. Pada Versi Excel terbaru mungkin hal ini akan sangat mudah dilakukan dengan hadirnya rumus TEXTJOIN namun bagi pengguna Excel versi lama, tentu hal ini bisa menjadi kendala karena harus menuliskan rumus yang panjang dan juga dengan kolom bantu yang banyak.

Gabung Text dengan kriteria

Sebagai alternatif, untuk Excel versi lama, kamu bisa membuat sebuah UDF (user-defined function) untuk membuat Fungsi atau Rumus sesuai dengan kehendak sendiri. Seperti pada contoh kali ini, Excelnoob membuat contoh UDF untuk penggabungan Text sesuai dengan kriteria yang ditentukan.

Menggabung Banyak Kata Sesuai Kriteria

Seperti yang sudah dibahas sebelumnya, dengan menggunakan UDF rumus ini bisa digunakan di Versi Excel berapa saja. Dengan catatan Setting Excel yang digunakan sudah mengaktifkan Macro pada Setting Security Optionya. Jika belum, kamu bisa membaca Cara Enable Macro setting terlebih dahulu.

Berikut ini Script Macro yang digunakan untuk membuat UDF penggabungan TEXT dengan Kriteria.

Function JOINIF(CriteriaRange As Range, _
                Criteria As Variant, _
                GabungRange As Range, _
                Optional Delimiter As String = ",") As Variant

    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

Jika kamu belum mengetahui cara membuat UDF, pertama yang harus kamu lakukan adalah masuk ke Visual basic Editor dengan Menekan ALT + F11 kemudian lakukan Insert Module.

Pada Module yang sudah dibuat, Masukan script diatas ( silahkan lakukan Copy Script) dan tutup kembali Visual Basic Editor. Sampai tahap ini Rumus JOINIF sudah berhasil dibuat, dengan Sintak Rumus seperti dibawah ini

=JOINIF(KriteriaRange,Kriteria, RangeYgdiGabung,[Delimiter])

Untuk pengguaan pada Cell, cukup ketikan rumus seperti rumus biasa, dengan ketentuan diatas. Untuk contoh bisa dilihat dibawah ini.

Penggunaan JOINIF Gabung TEXT

Jika kamu masih kesulitan dalam membuat UDF, kamu juga bisa download versi Addin, sehingga rumus JOINIF ini bisa lansung kamu gunakan tanpa harus menambahkan secara manual ke Visual Basic Editor. Unutk Versi Addin bisa didownload pada Link dibawah ini.

Be the first to comment

Leave a Reply

Your email address will not be published.


*