Membuat Kwitansi Dengan Fungsi Terbilang (Excel 2007)

  1. Buka Microsoft Excel.
  2. Tekan Alt + F11 untuk membuka VBA Editor, atau klik menu Tools -> Macro -> Visual Basic Editor.
  3. Di Visual Basic Editor, klik menu Insert -> Module.
  4. Lalu copy-paste script di bawah ini ke bidang kerjanya:
    Public Function TERBILANG(x As Double) As String
    Dim tampung As Double
    Dim teks As String
    Dim bagian As String
    Dim i As Integer
    Dim tanda As Boolean

    Dim letak(5)
    letak(1) = "RIBU "
    letak(2) = "JUTA "
    letak(3) = "MILYAR "
    letak(4) = "TRILYUN "

    If (x < 0) Then
        TERBILANG = ""
    Exit Function
    End If

    If (x = 0) Then
        TERBILANG = "NOL"
    Exit Function
    End If

    If (x < 2000) Then
        tanda = True
    End If
    teks = ""

    If (x >= 1E+15) Then
        TERBILANG = "NILAI TERLALU BESAR"
    Exit Function
    End If

    For i = 4 To 1 Step -1
        tampung = Int(x / (10 ^ (3 * i)))
        If (tampung > 0) Then
            bagian = ratusan(tampung, tanda)
            teks = teks & bagian & letak(i)
        End If
        x = x - tampung * (10 ^ (3 * i))
    Next

    teks = teks & ratusan(x, False)
    TERBILANG = teks & " Rupiah"
    End Function

    Function ratusan(ByVal y As Double, ByVal flag As Boolean) As String
    Dim tmp As Double
    Dim bilang As String
    Dim bag As String
    Dim j As Integer

    Dim angka(9)
    angka(1) = "SE"
    angka(2) = "DUA "
    angka(3) = "TIGA "
    angka(4) = "EMPAT "
    angka(5) = "LIMA "
    angka(6) = "ENAM "
    angka(7) = "TUJUH "
    angka(8) = "DELAPAN "
    angka(9) = "SEMBILAN "

    Dim posisi(2)
    posisi(1) = "PULUH "
    posisi(2) = "RATUS "

    bilang = ""
    For j = 2 To 1 Step -1
        tmp = Int(y / (10 ^ j))
        If (tmp > 0) Then
            bag = angka(tmp)
            If (j = 1 And tmp = 1) Then
                y = y - tmp * 10 ^ j
                If (y >= 1) Then
                    posisi(j) = "BELAS "
                Else
                    angka(y) = "SE"
                End If
                bilang = bilang & angka(y) & posisi(j)
                ratusan = bilang
                Exit Function
            Else
                bilang = bilang & bag & posisi(j)
        End If
    End If
    y = y - tmp * 10 ^ j
    Next

    If (flag = False) Then
        angka(1) = "SATU "
    End If
    bilang = bilang & angka(y)
    ratusan = bilang
    End Function

  5. Setelah di paste, coba cek script ini dengan klik menu Debug -> Compile VBA Project, jika tidak keluar kotak peringatan apapun biasanya script anda sudah beres.
  6. Tutup jendela Visual Basic Editor anda.

Nah sekarang tinggal coba aja:

Ketik di cell sembarang sederet angka (misal di cell A1), lalu untuk memanggil fungsi terbilang ini (misal di cell A2), tinggal ketik =TERBILANG(A1).

Cukup mudah bukan? Anda dapat mengunduh contoh artikel ini di sini.

Just in case, jika macro ini tidak bisa di jalankan di Excel anda (karena secara default Excel menset keamanan terhadap macro ke level tinggi), cek Security macro setting di Excel anda. Untuk melihat konfigurasi Security macro, klik Tools -> Macro -> Security dan pilih opsi Low lalu klik tombol OK. Saran saya pastikan anda sudah mempunya anti virus terinstal di komputer anda untuk menjaga agar virus macro tidak dapat menyerang komputer anda.


Sumber: edisusanto.com
no image
Item Reviewed: Membuat Kwitansi Dengan Fungsi Terbilang (Excel 2007) 9 out of 10 based on 10 ratings. 9 user reviews.

setelah saya ikuti semua langkah..ternyata gak bisa dipanggil dengan misal = terbilang(A1)..knp??
mkc atas jawabannya...

bisa saja setelah kami coba lagi... pada poin ke 5, tidak usah didebug lagi... karena scriptnya udah benar... makasih dah berkunjung ke blog kami.

maaf sebelumnya setelah apa yang pak agoes sarankan saya coba, ternyata setelah saya ketik = terbilang (A1), yang keluar hasilnya adalah #name?..kenapa ya pak?? apanya yang salah..?? mohon bantuannya..perlu di ketahui ms excel saya adalah 2007

Emoticon? nyengir

Berkomentarlah dengan Bahasa yang Relevan dan Sopan.. #ThinkHIGH! ^_^

Komentar Terbaru

Just load it!