Nabila

29 Agustus 2007

Depok, Indonesia

Thanks For visiting my blog,
::
Start
Nabila
Shutdown

Navbar3

Search This Blog

Kamis, 27 Desember 2012

Membuat Formula Terbilang di Excel

Beberapa waktu yang lalu yang lalu, yang "KATAYA" seorang pakar dalam menyusun anggaran dan saya sendiri tidak tau apakah dia mengetes atau memang tidak tau, tapi yang jelas dia bertanya tentang formula untuk mengubah sebuah angka menjadi teks dalam dengan menggunakan Ms.Excel. Dengan pasti orang tersebut bilang "Gmana cara merubah angka 145 di dalam excel menjadi seratus empat puluh lima.? seperti tulisan “terbilang” yang banyak digunakan untuk membuat faktur, nota atau kwitansi."

Dengan dia bertanya saya jadi ingat formula tentang hal ini. Sebenarnya, awalnya formula ini untuk teks berbahasa Inggris tapi dengan sedikit utak utek kemudian saya mengubahnya menjadi berbahasa Indonesia. Karena adanya perbedaan struktur bahasa, tentu saja perubahan ini menjadi tidak sekadar hanya menerjemahkan. Langkah-langkahnya cukup mudah kok untuk mengurai angka menjadi text. Are you ready.!!!

    Buka Ms.Excel anda atau buat file baru Ms.Excel, buka Microsoft Visual Basic Editor dari menu Tools > Macro > Visual Basic Editor atau langsung tekan tombol Alt + F11.
    Buat sebuah module baru dengan cara klik menu Insert > Module kemudian tambahkan script berikut. :

Option Explicit
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 "
'Pengubah 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
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
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
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


Simpan dan tutup kembali Visual Basis Editor lalu kembali ke lembar kerja excel, coba ketikkan angka sembarang di sembarang tempat.

Contoh : ketikkan nilai 1199 dalam cell B5 Kemudia di cell yang lain ketikkan formula =terbilang(B5)
Jika fungsi diatas ditulis dengan benar maka di cell tersebut akan muncul hasil terbilang yaitu seribu seratus sembilan puluh sembilan rupiah













Thank for read.

sumber : http://teknoringan.blogspot.com

0 komentar: