Misalkan, diberikan sebuah angka 145 akan berubah menjadi seratus empat puluh lima. Seperti tulisan “terbilang” yang ada di kuitansi-kuitansi.
Berikut ini adalah kode Makro yg berfungsi
untuk mengubah angka menjadi teks:
Option Explicit
'***************
' Fungsi Utama
' Mengubah Angka Menjadi Teks
'***************
Function Terbilang(ByVal MyNumber)
Dim
Rupiah, Sen, Temp
Dim
Des, Desimal, Count, Tmp
Dim
IsNeg
ReDim
Place(9) As String
Place(2) = "ribu "
Place(3) = "juta "
Place(4) = "milyar "
Place(5) = "trilyun "
'Ubah
angka menjadi string
MyNumber = Round(MyNumber, 2)
MyNumber = Trim(Str(MyNumber))
'Cek
bilangan negatif
If
Mid(MyNumber, 1, 1) = "-" Then
MyNumber = Right(MyNumber, Len(MyNumber) - 1)
IsNeg = True
End
If
'Posisi desimal, 0 jika bil. bulat
Desimal = InStr(MyNumber, ".")
'Pembulatan sen, dua angka di belakang koma
Des = Mid(MyNumber, Desimal + 2)
If
Desimal > 0 Then
Tmp = Left(Mid(MyNumber, Desimal + 1) & "00", 2)
If Left(Tmp, 1) = "0" Then
Tmp = Mid(Tmp, 2)
Sen = Satuan(Tmp)
Else
Sen = Puluhan(Tmp)
End If
MyNumber = Trim(Left(MyNumber, Desimal - 1))
End
If
Count
= 1
Do
While MyNumber <> ""
Temp = Ratusan(Right(MyNumber, 3), Count)
If
Temp <> "" Then Rupiah = Temp & Place(Count) & Rupiah
If Len(MyNumber) > 3 Then
MyNumber = Left(MyNumber, Len(MyNumber) - 3)
Else
MyNumber = ""
End If
Count = Count + 1
Loop
Select Case Rupiah
Case ""
Rupiah = "nol rupiah"
Case Else
Rupiah = Rupiah & "rupiah"
End
Select
Select Case Sen
Case ""
Sen = ""
Case Else
Sen = " dan " & Sen & "sen"
End
Select
If
IsNeg = True Then
Terbilang = "minus " & Rupiah & Sen
Else
Terbilang = Rupiah & Sen
End
If
End Function
'**************************************
' Mengubah angka 100-999 menjadi teks *
'**************************************
Function Ratusan(ByVal MyNumber, Count)
Dim
Result As String
Dim Tmp
If
Val(MyNumber) = 0 Then Exit Function
MyNumber = Right("000" & MyNumber, 3)
'Mengubah seribu
If
MyNumber = "001" And Count = 2 Then
Ratusan = "se"
Exit Function
End
If
'Mengubah ratusan
If
Mid(MyNumber, 1, 1) <> "0" Then
If Mid(MyNumber, 1, 1) = "1" Then
Result = "seratus "
Else
Result = Satuan(Mid(MyNumber, 1, 1)) & "ratus "
End If
End
If
'Mengubah puluhan dan satuan
If
Mid(MyNumber, 2, 1) <> "0" Then
Result = Result & Puluhan(Mid(MyNumber, 2))
Else
Result = Result & Satuan(Mid(MyNumber, 3))
End
If
Ratusan = Result
End Function
'*******************
' Mengubah puluhan *
'*******************
Function Puluhan(TeksPuluhan)
Dim
Result As String
Result = ""
'
nilai antara 10-19
If
Val(Left(TeksPuluhan, 1)) = 1 Then
Select Case Val(TeksPuluhan)
Case 10: Result = "sepuluh "
Case 11: Result = "sebelas "
Case Else
Result = Satuan(Mid(TeksPuluhan, 2)) & "belas "
End Select
'
nilai antara 20-99
Else
Result = Satuan(Mid(TeksPuluhan, 1, 1)) _
& "puluh "
Result = Result & Satuan(Right(TeksPuluhan, 1))
'satuan
End
If
Puluhan = Result
End
Function
'********************************
' Mengubah satuan menjadi teks. *
'********************************
Function Satuan(Digit)
Select Case Val(Digit)
Case 1: Satuan = "satu "
Case 2: Satuan = "dua "
Case 3: Satuan = "tiga "
Case 4: Satuan = "empat "
Case 5: Satuan = "lima "
Case 6: Satuan = "enam "
Case 7: Satuan = "tujuh "
Case 8: Satuan = "delapan "
Case 9: Satuan = "sembilan "
Case Else: Satuan = ""
End
Select
End Function
Bagi Anda yang kesulitan menerapkan macro ini, berikut adalah petunjuk
singkatnya.
1. Bukalah berkas Excel yang baru, atau berkas milik Anda yang ingin
ditambahi kode ini.
2. Pergilah ke Tools > Macro > Visual Basic Editor.
Langkah ini dapat pula Anda tempuh dengan menekan Alt +
F11. Langkah ini akan membuka satu jendela khusus untuk Visual
Basic Editor.
3. Di bagian VBAProject di panel sebelah kiri, klik-kanan ThisWorkbook
> Insert > Module.
4. Anda tinggal memasukkan kode makro ke bagian module di MS
Visual Basic pada berkas Excel Anda. Di bagian kosong yang terbuka di bagian
kanan, tuliskan kode macro seperti diatas tadi.
5. Kembalilah ke jendela Excel Anda, dan cobalah tuliskan
formula terbilang di salah satu sel. Misalnya, tulislah
=terbilang(123)
maka
hasilnya akan berupa tulisan seratus dua puluh tiga rupiah
. Anda juga dapat menulis formula dengan =terbilang(B3)
, misalnya, dan sel B3 berisi angka yang ingin dibuat teks.
Perhatian. Bila macro di aplikasi Excel Anda tidak dapat
dijalankan, periksalah bagian Macro security.
Pergilah ke Tools > Options…,
klik tabSecurity lalu klik tombol Macro
Security di
bagian bawah. Ubah pilihanSecurity
level ke Medium (disarankan) atau Low.
Pembaruan. Pengecekan bilangan
negatif ditambahkan. Bilangan negatif akan dibaca minus
sekian sekian.
Untuk mengaktifkan add-ins ini, simpan berkas
.xla yang sudah Anda unduh di komputer Anda. Di Excel, pergilah ke menu Tools
> Add-Ins…. Di kotak Add-Ins yang terbuka, klik tombol Browse… dan arahkan ke berkas .xla yang Anda
miliki. Add-ins untuk fungsi terbilang kini tampak dalam daftar. Centang
kotaknya lalu klik tombol OK. Anda sekarang
dapat menggunakan fungsi ini di semua dokumen Excel yang Anda buka.
Tidak ada komentar:
Posting Komentar