Membuat Fungsi Terbilang
Tulisan ini saya buat saat saya ada prtanyaan dari teman untuk dibuatkan cara membuat laporan dalam Ms. excel. Temen saya tersebut minta agar dalam laporanya itu, bisa membaca isian angka ke dalam huruf. Karna saya terus terang kurang mahir dlm excel, maka saya pun mencari-cari tutorialnya dari mbah google. Dan akhirnya saya temukan tutorial yang sangat ampuh dari www.edisusanto.com.
Sebetulnya pembuatan fungsi terbilang ini tidaklah susah jika kita mau menggunakan logika kita sedikit. Tapi sayang malam ini, logika saya juga baru ngga mau di ajak kompromi jadi saya akan membuat tutorial-nya saja step-by-step dan scriptnya saya mengambilnya di-sini lalu saya hanya merapikannya sedikit saja. Berikut langkah yang harus anda ambil:
- Buka Microsoft Excel.
- Tekan Alt + F11 untuk membuka VBA Editor, atau klik menu Tools -> Macro -> Visual Basic Editor.
- Di Visual Basic Editor, klik menu Insert -> Module.
- Lalu copy-paste script 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
- 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.
- Tutup jendela Visual Basic Editor anda.
- Ketik di cell sembarang sederet angka (misal di cell A1), lalu
untuk memanggil fungsi terbilang ini (misal di cell A2), tinggal ketik
=TERBILANG(A1)
.
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.