Menjawab pertanyaan di artikel saya yang ini, saya langsung mencari arsip programming saya, karena dulu seingat saya pernah membuat fungsi tersebut untuk penulisan kuitansi. Setelah 2 jam cari-cari saya tidak juga menemukan fungsi yang telah saya tulis 5 tahun yang lalu, akhirnya saya mengambil jalan pintas saja, yaitu googling…
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.
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.


Trism mas Edi, dah berhasil. Mau minta tolong nih, utk terjemahan nilai pada rapor maupun ijasah yg ada desimalnya dua angka misal 7,05 (tujuh koma nol lima
trim, sebelumnya………….!!!
Sedikit koreksi mas Edi, utk rupianya masih tertulis huruf kecil, tapi dah tak perbaiki…
thank
suwun, siiip…. saya dah coba dan sangat membantu.
mas gimana kalo membandingkan data-data, pakai rumus apa ya? misal jika ada sel yg datanya sama sel akan berwarna sama atau muncul tulisan sesuatu.
trims sebelumnya,
lemah teles…gustiAllah sing mbales.
[rq=2804,0,blog][/rq]Cara Mengatasi Program Aplikasi Yang Tidak Bisa di Uninstall
Terima kasih buanyak….programnya sangat membantu dalam pekerjaan saya…..
@fAJAR: coba aja pakai Conditional Formatting…
Pak..knapa ya stlh semua langkahnya saya lakukan kemudian saya coba menuliskan angka dan mencoba rumusnya yang keluar : ambiguous name detected : terbilang
@HENDRA: kemungkinan besar anda menuliskan double fungsi itu. Biar mudahnya coba liat contoh yang saya sertakan di artikel ini.
Gmn Cra Agar Terbilangnya awal Kata Huruf Besar Semu? Contoh Rp.122.222.000 ( Seratus Dua Puluh Dua Juta Dua Ratus Dua Puluh Dua Ribu Rupiah ) Kalo yang bs kasih tauu sayaa ……….terimakasihh
Ass.
Pak, dikomputer saya fungsi terbilangnya cuma aktif ketika pertamakali dijalankan. setelah itu tidak bisa kita fungsikan lagi, fungsi terbilangnya berubah menjadi ” #NAME? “. Saya udah coba telusuri jawaban Bapak lewat komentar rekan-rekan, tapi belum ketemu jawabannya. Saat ini saya memakai microsoft office versi 2007. Bagaimana jalan solusinya? trm ksh.
@Teuku Zulkarnaini: Coba liat di bagian atas ada tombol konfirmasi Blocked Content, di Enable saja.
bagus untuk berbagi….kalo ada yg perlu terbilang rupiah versi inggris ataupun terbilang dalam dollar saya punya kodenya….silahkan email ke edo_bjb@yahoo.co.id
Ini link dll untuk terbilang bisa digunakan untuk C, C++, PHP, ASP, Power Builder, VB6, .NET, Delphi, Foxpro, VBA. Dll ini tidak membutuhkan runtime dll atau tidak ada ketergantungan dengan dll lain, jadi betul2 berdiri sendiri. berbeda dengan kebanyakan dll terbilang yang membutuhkan runtime dll, misalnya dll terbilang yg dibuat pake VB6 akan membutuhkan msvbvm60.dll.
http://www.4shared.com/file/100338435/9b509b52/TerbilangTest.html?s=1
hanya ada 2 function dalam DLL ini :
– BuatTerbilang(NilaiUang)
– AboutBRAJAterbilang
om…terima kasih banyak, ini membantu bener buat hidup gw…..makasih banget…lo emang top om
ma kasih atas infonya, udah saya coba dan berhasil
tapi ada satu yang kurang, gimana cara agar terbilangnya setiap awal kata huruf besar
CONTOH : Rp 700.000,- (Tujuh Ratus Ribu Rupiah) dengan Rp. 150.000,- (Seratus Lima Puluh Ribu Rupiah). Antara kalimat Ratus dengan Seratus gima cara masukan rumusnya.
thanks untk info nya,sangat2 bermanfaat.
sekalian saya mau tanya,klu untuk buat tanda : (titik dua) yg menurun ke bawah sampai akhir sell cara nya bagai mana ya?…
misal nya:
total :
:
:
:
:
:
:
nah titik dua nya itu biar bisa langsung di buat di salah satu sell sampai bawah
Salam
081
Mohon bantuannya pa, kl misalnya untuk terbilang dollar gmn?
Thanks,
makasih membantu banget tapi yang ada desimalnya donk pak..plzzzz
Terima kasih Pak, saya sudah mempraktekannya, tapi masih ada sedikit masalah untuk mengatur huruf kapital pertamanya.
Salam,
Amas
THANKS, MAKASIH BANYAAK
Terima kasih Pak… saya dah coba untuk penulisan nilai huruf di raport, n berhasil. tp dimodifikasi sedikit, karena ada Rupiah… heheh
Trims ya… Sukses selalu…
Trimakasih bayak atas info VB’a sangat membantu ana… JZKL
thank mas, kepake banget..
pertama udah bisa jalan, tapi wktu buka jendela baru, ko gak bisa lagi, padahal dah di copy lagi di Vb nya..
ad peringatan :
ambigous name detected : Terbilang..
mohon saran nya mas..
excel 07
thank b4
eh udah bisa..
ternyata doble module..
thank..
aduhh mas,,
waktu pertama nyoba bsa..
tapy pas saya coba lgy kok keluar “Name” gtu..
ap karena sya bkin ny berkalie2..
saya dah cba buat d halaman yang baru sama aj,,
gmn ya mas saya buat ny d Excel 2003,,
saya butuh bwt bikin invoice dan kwitansi..
trima kasihh sblmm ny…
pak edi..
dagh berhasill nehh,,
heheheh
klw utk menambahkan tanda “#” di awal dan di akhirny gmn ya??
@adi: coba beri rumus
=CONCATENATE("# ";Terbilang(A2);" #"), A2 adalah cell data anda….(bisa di ganti sendiri)10 Jempol buat anda.
Makasih pak Edi untuk rumus terbilangnya, tapi Bagaimana ya kalau penulisannya hanya huruf depannnya saja yang besar dan gimana ya kalau ada koma dan tanpa rupiah
Rp 150000 Seratus lima puluh ribu rupiah
Rp 50000 Lima puluh ribu rupuah
50,75 Lima puluh koma tujuh lima
Nuwun
Thanks atas scriptnya
Angka menjadi terbilang, kalau ingin tanpa rupiahnya tidak muncul cukup edit
Select Case Rupiah
Case “”
Rupiah = “nol”
Case Else
Rupiah = Rupiah & ” ”
dan apabila muncul angka 70,25, maka akan dibaca tujuh puluh dan dua puluh sen.
buat cell dengan menggunakan fungsi if (angkanya dibulatkan kedepan tanpa koma)
Terima kasih
Terima kasih atas ilmunya, lain kali kita coba lagi…., thank’s for you..
Pak Makasih berhasil tuh,,cuman saya mau nanya kalo buat ngilangin teks ” RUPIAH” nya gimana ya pak??makasih sebelumnya
@Abu Naufal: Coba anda cari baris yang tertulis: TERBILANG = teks & ” Rupiah”, nah tulisan rupiahnya di hapus aja… semoga membantu
Pak nambah lagi kalau mau lihat cell di ms excel misal ada angka :
10278-1
10278-2
10278-3
10335-1
10256-1
10278-4
13356-25
10435-12
kalo saya mau nyari hanya angka 10278,,,dan yang keluar itu semua angka yang berawalan 10278,,gimana caranya yah pak,,makasih sebelumnya
@Abu Nafal: Pakai formula LEFT aja pak, kalo dalam kasus bapak, ketikan =LEFT(cell;5), cell refer ke cell data anda.
pake filter aja..select columnnya trs klik kanan n klik filter, n pilih tanda panah kebawah di kanan atas cell pilih yg mau di filter 😀
dear pak edi,
mohon info kalau mau memisahkan kata terbilang di bilyet giro, karena kalau jadi satu baris tidak cukup. tks infonya
kalau menggunakan bahasa c++ gmn pak? mohon infonya
@sadikin: aduh pak maaf… saya ngga pernah pake C++, mungkin dari syntax saya itu, anda bisa mengambil logika nya terus di ubah ke C++
makasih pak artikelnya saya sudah mencoba dan berhasil, tapi terbilangnya menjadi pembulatan ya pak, gimana caranya agar terbilang sesuai dengan nilainya pak?
link terbilang ms access indo n english silahkan coba aja
http://rapidshare.com/files/389589716/terbilang.mdb.html
http://www.4shared.com/document/V4mTfPcn/terbilang.html
Terima Kasih Banyak Pak atas Blog yang anda buat
Ini sangat membantu saya…
Dan Skarang saya sedang mendalami MS Access.
Mungkin Bapak dapat membantu saya untuk belajar lebih mengerti MS access 2003.
Mungkin seperti dalam pembuatan Queries yang di mana saya harus menggabungkan kelompok proses produksi
*Contoh:
Proses produksi terdiri dari 3 proses yaitu BOR, FRAIZ dan CROSS CUT.
Entryan pada tabel adalah sbb:
Fraiz sejumlah 3 set
Bor sejumlah 2 set
Cross Cut sejumlah 3 set
Pada Qeuries akan muncul 3 entrian seperti di atas sedang kan saya inginkan menjadi
PROSES sejumlah 8 set
MOHON BANTUANnya….
Saya tunggu balasanya di email saya.
Sebelum dan sesudahnya saya ucapkan terima kasih.
Salam………….
terima kasih….artikel ini sangat membantu saya dalam tugas saya..
tapi saya mau tanya,saya masih gaptek gitu pak, terutama di dalam excel dan menemui masalah dalam pengerjaannya..
Ceritanya saya di minta membuat program perhitungan pinjaman dengan menggunakan jatuh tempo…sebagai contoh:
NO Nama TglPinjaman Angsuran Jatuhtempo JmlPembayaran JmlAngsuran
1 A 12-05-10 Hari 150hari 10.000
2 B 12-05-10 Minggu 20minggu 20.000
3 C 12-05-10 Bulan 10bulan 15.000
Pada tabel diatas terdapat data tanggal pinjaman dan pembayaran angsuran serta Keterangan
Pembayaran. Saya ingin setiap kali saya memasukkan data Tanggal pembayaran, Pembayaran Angsuran serta keterangan pembayaran, di kolom jatuh tempo secara otomatis menghitung tanggal jatuh tempo berdasar pada tanggal pinjaman dan jumlah pembayaran…kira-kira bagaimana prumusan dalam excelnya yah…?mohon bantuannya…
Terima kasih…
mohon bantuannya….
bagaimana cara mangganti huruf terbilang yg sdh ada, dari huruf kecil ke huruf besar atau sebaliknya. Terimakasih
@dani: pake UPPER aja mas..
Mas Edi: matur nuwun…..
tipsnya membantu…
tapi mas, kadang bisa kadang juga tidak.
kenapa yach…?
Saya udh coba mas, tapi gak bisa…
muncul #name!
salah diapanya ya?
pak, saya pinginnya ga pake huruf kapital semua, jadi misalya 2.142 ==> Dua Ribu Seratus Empat Puluh Dua..
Soalnya kalo saya pakai punya bapak, keluarnya jd gini : Dua Ribu SeRatus Empat Puluh Dua
gmn y pak..??
mohon bantuannya..
thx b4
Malam semuanya………
aku sgt tertarik n udah dipraktekkan ternyata hasilnya sangat membantu aku dalam pekerjaan dikantor namun ada sedikit kendala.
setelah aku coba terbilang yang didepan huruf besar semua namun untuk rupiah ditulis dengan huruf kecil.
misanya :
angka Rp. 1.000
terbilang hasilanya ” SERIBU rupiah ”
mohon petunjuk.
Selamat pagi rekan-rekan……
aku mau nambahin pertanyaanku kepada rekan-rekan senior kenapa penulisan angkanya tidak diawali dengan huruf besar dahulu……
cth…..
angka : Rp. 1.250
tulisan : seribu dua ratus lima puluh ribu rupiah
yang ku maksud,
angka : Rp. 1.250
tulisan : Seribu Dua Ratus Lima Puluh Ribu Rupiah
mohon petunjuk…….
mas Edi… kok g’ permanen yaa…!!
gimana caranya biar bisa permanen, jadi kerjanya g’ ngulang2 terus….thanks