UDF Menjumlahkan Text

Materi ini adalah jawaban dari pertanyaan yang ditanyakan di Group, tentang bagaimana menjumlahkan sembuah angka yang ada pada cells dimana setiap cell terdapat 3 nilai yang berbeda.

Setiap nilai cell tentunya berupa Text dan bukan nilai number yang bisa langsung dijumlahkan.

Tentunya keinginan pengguna adalah adanya sebuah rumus yang bisa langsung menjumlahkan tanpa perlu memecah isi cells terlebih dahulu.

Untuk menjawab keinginan tersebut, VBA bisa menjadi solusi, dimana dengan VBA bisa membuat sebuah User Defined Function (UDF) atau sebuah rumus yang bisa dibuat sendiri.

Jawaban :

Function MasterSUM(Rng As Range)
'-----------------------------------------
' Sctipt VBA    : SUM Text Cells
' Author        : https://vba.co.id
'                 Situs belajar VBA No.1
'                 di Indonesia
'-----------------------------------------
Dim Nilai(2) As Double
Dim isi As Range
Dim Datx As Variant

For Each isi In Rng
    Datx = Split(isi, vbLf)
    For i = LBound(Datx) To UBound(Datx)
        Datx(i) = Replace(Datx(i), "Rp.", "")
        Datx(i) = Replace(Datx(i), ".", "")
        Datx(i) = CDbl(Datx(i))
        Nilai(i) = Nilai(i) + Datx(i)
    Next i
   
Next

MasterSUM = Format(Nilai(0), "\R\p\. #,###") & vbLf & _
            Format(Nilai(1), "\R\p\. #,###") & vbLf & _
            Format(Nilai(2), "\R\p\. #,###")
End Function

Dan hasilnya bisa dilihat pada gambar dibawah ini :

Leave a Reply

Your email address will not be published. Required fields are marked *