Sebenarnya sudah banyak yang sharing cara membuat angka terbilang otomatis di Microsoft Excel. Sebagian besar web yang membagikan membuat angka terbilang tersebut memakai metode menggunakan Add Ins, sehingga sangat memudahkan pengguna Excel untuk membuat angka terbilang. Namun kali ini kami akan berbagi bagaimana cara membuat angka terbilang dengan Excel menggunakan Macro atau VBA.
Bagi yang belum kenal dengan Macro atau VBA silahkan buka link berikut : Mengenal Macro (VBA) di Microsoft Excel.
Apa yang dimaksud dengan angka terbilang ? coba perhatikan gambar dibawah ini :
Pada gambar diatas terlihat angka yang kita tulis pada Cell A2 akan diterjemahkan menjadi terbilang Pada Cell B2. Angka 1.100.201 akan menjadi terbilangnya "Satu Juta Satu Ratus Ribu Dua Ratus Satu Rupiah". Jika ini dilakukan secara manual maka akan memakan waktu dan yang paling fatal bisa saja terjadi kesalahan. Angka terbilang biasanya banyak digunakan untuk Invoice, Kwitansi, dan atau tanda terima pembelian barang maupun jasa.
Untuk memudahkan hal tersebut diatas maka mari kita buat dengan Excel lalu gunakan Macro untuk membuat angka terbilang secara otomatis, jadi tidak perlu lagi khawatir akan terjadi kesalahan dalam pengetikan angka terbilang tersebut.
A. Aktifkan Microsoft Excel
- Pada Cell A2, masukan angka 10000
- Pada Cell B2, masukan rumus atau formula =terbilang(A2)
Setelah data tersebut dimasukkan maka akan muncul Error pada formula excel, seperti dibawah ini.
Error tersebut menunjukkan bahwa FORMULA terbilang() belum kita buat. Untuk itu mari lanjut kita buat dulu formulara terbilang() menggunakan Macro agar angka terbilang di cell B2 bisa langsung otomatis tertera "Sepuluh Ribu Rupiah".
B. Aktifkan Layar Macro atau VBA
- Tekan Alt + F11, sehingga muncul layar seperti berikut :
- Tambahkan 1 module
- Copas kode VBA berikut :
(Credit Kode Berikut Buat Pak Masino Sinaga : https://ilovephpmaker.wordpress.com)
Option Explicit
'Credit For Mr Masino Sinaga
'Modified By Tekno-G.Blogspot.Com
Public Function terbilang(ByVal N As Long) As String
Const Ribu = 1000&
Const Juta = Ribu * Ribu
Const Milliar = Ribu * Juta
'Const Trillion = Thousand * Billion
Dim Buf As String: Buf = ""
If (N = 0) Then terbilang = "Nol": Exit Function
If (N < 0) Then Buf = "Min ": N = -N
If (N >= Milliar) Then
Buf = Buf & EnglishDigitGroup(N \ Milliar) & " Milliar"
N = N Mod Milliar
If (N) Then Buf = Buf & " "
End If
If (N >= Juta) Then
Buf = Buf & EnglishDigitGroup(N \ Juta) & " Juta"
N = N Mod Juta
If (N) Then Buf = Buf & " "
End If
If (N >= Ribu) Then
If N \ Ribu = 1 Then
Buf = Buf & "Seribu"
Else
Buf = Buf & EnglishDigitGroup(N \ Ribu) & " Ribu"
End If
N = N Mod Ribu
If (N) Then Buf = Buf & " "
End If
If (N > 0) Then
Buf = Buf & EnglishDigitGroup(N)
End If
terbilang = Buf + " Rupiah"
' a = terbilang
End Function
' Support function to be used only by terbilang()
Function EnglishDigitGroup(ByVal N As Integer) As String
Const Ratus = " Ratus"
Const satu = "Satu"
Const dua = "Dua"
Const tiga = "Tiga"
Const Empat = "Empat"
Const Lima = "Lima"
Const Enam = "Enam"
Const Tujuh = "Tujuh"
Const delapan = "Delapan"
Const sembilan = "Sembilan"
Dim Buf As String: Buf = ""
Dim Flag As Integer: Flag = False
'Do Ratuss
Select Case (N \ 100)
Case 0: Buf = "": Flag = False
Case 1: Buf = "Seratus": Flag = True
Case 2: Buf = dua & Ratus: Flag = True
Case 3: Buf = tiga & Ratus: Flag = True
Case 4: Buf = Empat & Ratus: Flag = True
Case 5: Buf = Lima & Ratus: Flag = True
Case 6: Buf = Enam & Ratus: Flag = True
Case 7: Buf = Tujuh & Ratus: Flag = True
Case 8: Buf = delapan & Ratus: Flag = True
Case 9: Buf = sembilan & Ratus: Flag = True
End Select
If (Flag) Then N = N Mod 100
If (N) Then
If (Flag) Then Buf = Buf & " "
Else
EnglishDigitGroup = Buf
Exit Function
End If
'Do sepuluhs (except teens)
Select Case (N \ 10)
Case 0, 1: Flag = False
Case 2: Buf = Buf & "Dua Puluh": Flag = True
Case 3: Buf = Buf & "Tiga Puluh": Flag = True
Case 4: Buf = Buf & "Empat Puluh": Flag = True
Case 5: Buf = Buf & "Lima Puluh": Flag = True
Case 6: Buf = Buf & "Enam Puluh": Flag = True
Case 7: Buf = Buf & "Tujuh Puluh": Flag = True
Case 8: Buf = Buf & "Delapan Puluh": Flag = True
Case 9: Buf = Buf & "Sembilan Puluh": Flag = True
End Select
If (Flag) Then N = N Mod 10
If (N) Then
If (Flag) Then Buf = Buf & " "
Else
EnglishDigitGroup = Buf
Exit Function
End If
Select Case (N)
Case 0: 'ndak ado
Case 1: Buf = Buf & satu
Case 2: Buf = Buf & dua
Case 3: Buf = Buf & tiga
Case 4: Buf = Buf & Empat
Case 5: Buf = Buf & Lima
Case 6: Buf = Buf & Enam
Case 7: Buf = Buf & Tujuh
Case 8: Buf = Buf & delapan
Case 9: Buf = Buf & sembilan
Case 10: Buf = Buf & "Sepuluh"
Case 11: Buf = Buf & "Sebelas"
Case 12: Buf = Buf & "Dua belas"
Case 13: Buf = Buf & "Tiga belas"
Case 14: Buf = Buf & "Empat belas"
Case 15: Buf = Buf & "Lima Belas"
Case 16: Buf = Buf & "Enam Belas"
Case 17: Buf = Buf & "Tujuh Belas"
Case 18: Buf = Buf & "Delapan Belas"
Case 19: Buf = Buf & "Sembilan Belas"
End Select
EnglishDigitGroup = Buf
End Function
- Sehingga hasilnya seperti ini
- Sekarang Cek Lagi di Excel Book1, ternyata masih Error
- Klik Menu File, Options
C. Merubah Macro Settings, Agar Formula Terbilang Bisa dijalankan..
Agar macro bisa berjalan dengan baik, maka perlu dilakukan perubahan macro setting di Excel yaitu dengan cara :- Klik Menu File, Options
- Lalu Klik Trust Center, Macro Settings, Pilih Enable All Macro
![]() |
Ubah Macro Settings |
D. Hasil Akhir Angka Terbilang Otomatis Dengan Excel
Berikut hasil akhirnya, sahabat tekno-g bisa menggunakan file tersebut untuk membuat berbagai macam kebutuhan yang menggunakan angka terbilang antara lain : kwintansi, invoice, faktur penjualan, struk penjualan dan lain-lain.![]() |
Hasil Akhir Angka Terbilang Otomatis Dengan Excel |
Nah bagi yang tidak mau repot untuk membuka-buka macro, kami akan sediakan file Add ins siap pakai, dan bisa digunakan dengan file lain secara bersamaan dalam satu komputer atau bisa juga file yang telah ready code macronya.. sabar ya tunggu tanggal mainnya akan kami buat artikel dan upload file nya.
Eu goѕtei mujto do post! Me interessa bastante eaѕe tipo de artigo
ReplyDeleteWow, aⲣrovаdo! gosteі mսito!
ReplyDeleteWow, aprovado! gostei muito!
ReplyDelete