Anda di halaman 1dari 5

Function angka2word(Angka As String) As String If IsNumeric(Angka) = False Then MsgBox "not valid number" Exit Function End If 'proses

sen/pecahan Dim centword As String Dim SatuanSen As Integer, PuluhanSen As Integer If Val(Angka) - Fix(Val(Angka)) > 0 Then If Left(Right(Angka, 2), 1) = "." Then Angka = Angka + "0" PuluhanSen = CDbl(Left(Right(Angka, 2), 1)) SatuanSen = CDbl(Right(Angka, 1)) 'satuansen dan puluhansen If PuluhanSen = 1 Then Select Case SatuanSen Case 0 centword = "Sepuluh " Case 1 centword = "Sebelas " Case 2 centword = "Dua Belas " Case 3 centword = "Tiga Belas " Case 4 centword = "Empat Belas " Case 5 centword = "Lima Belas " Case 6 centword = "Enam Belas " Case 7 centword = "Tujuh Belas " Case 8 centword = "Delapan Belas " Case 9 centword = "Sembilan Belas " End Select ElseIf PuluhanSen = 0 Then Select Case SatuanSen Case 1 centword = "Satu " Case 2 centword = "Dua " Case 3 centword = "Tiga " Case 4 centword = "Empat " Case 5 centword = "Lima " Case 6 centword = "Enam " Case 7 centword = "Tujuh " Case 8 centword = "Delapan " Case 9 centword = "Sembilan "

End Select Else Select Case PuluhanSen Case 2 centword = "Dua Puluh " Case 3 centword = "Tiga Puluh " Case 4 centword = "Empat Puluh " Case 5 centword = "Lima Puluh " Case 6 centword = "Enam Puluh " Case 7 centword = "Tujuh Puluh " Case 8 centword = "Delapan Puluh " Case 9 centword = "Sembilan Puluh " End Select Select Case SatuanSen Case 0 centword = centword & "" Case 1 centword = centword & "Satu " Case 2 centword = centword & "Dua " Case 3 centword = centword & "Tiga " Case 4 centword = centword & "Empat " Case 5 centword = centword & "Lima " Case 6 centword = centword & "Enam " Case 7 centword = centword & "Tujuh " Case 8 centword = centword & "Delapan " Case 9 centword = centword & "Sembilan " End Select End If centword = "koma " & centword End If 'proses mulai satuan Dim word As String, word0 As String Dim Satuan As Integer, puluhan As Integer, ratusan As Integer Dim c As Long Dim tigadigit(5) As String Angka = Fix(Val(Angka)) word0 = "" tigadigit(0) tigadigit(1) tigadigit(2) tigadigit(3) tigadigit(4) = = = = = "" "Ribu " "Juta " "Milyar " "Trilyun "

c = 0 Do While Len(RTrim(Angka)) > 0 word = "" '3 digit awal If Len(RTrim(Angka)) > 0 Then Satuan = CDbl(Right(Angka, 1)) Angka = Left(Angka, Len(Angka) - 1) Else Satuan = 0 End If If Len(RTrim(Angka)) > 0 Then puluhan = CDbl(Right(Angka, 1)) Angka = Left(Angka, Len(Angka) - 1) Else puluhan = 0 End If 'angka satuan dan puluhan If puluhan = 1 Then Select Case Satuan Case 0 word = "Sepuluh " & word Case 1 word = "Sebelas " & word Case 2 word = "Dua Belas " & word Case 3 word = "Tiga Belas " & word Case 4 word = "Empat Belas " & word Case 5 word = "Lima Belas " & word Case 6 word = "Enam Belas " & word Case 7 word = "Tujuh Belas " & word Case 8 word = "Delapan Belas " & word Case 9 word = "Sembilan Belas " & word End Select ElseIf puluhan = 0 Then Select Case Satuan Case 0 If Len(Angka) = 0 Then word = "Nol" End If Case 1 word = "Satu " & word Case 2 word = "Dua " & word Case 3 word = "Tiga " & word Case 4 word = "Empat " & word Case 5 word = "Lima " & word Case 6 word = "Enam " & word

Case 7 word = "Tujuh " & word Case 8 word = "Delapan " & word Case 9 word = "Sembilan " & word End Select Else Select Case puluhan Case 2 word = "Dua Puluh " & word Case 3 word = "Tiga Puluh " & word Case 4 word = "Empat Puluh " & word Case 5 word = "Lima Puluh " & word Case 6 word = "Enam Puluh " & word Case 7 word = "Tujuh Puluh " & word Case 8 word = "Delapan Puluh " & word Case 9 word = "Sembilan Puluh " & word End Select Select Case Satuan Case 0 word = word & "" Case 1 word = word & "Satu " Case 2 word = word & "Dua " Case 3 word = word & "Tiga " Case 4 word = word & "Empat " Case 5 word = word & "Lima " Case 6 word = word & "Enam " Case 7 word = word & "Tujuh " Case 8 word = word & "Delapan " Case 9 word = word & "Sembilan " End Select End If 'ratusan If Len(RTrim(Angka)) > 0 Then ratusan = CDbl(Right(Angka, 1)) Angka = Left(Angka, Len(Angka) - 1) Else ratusan = 0 End If Select Case ratusan Case 0 Case 1 word = "Seratus " & word

Case 2 word = "Dua Ratus " & word Case 3 word = "Tiga Ratus " & word Case 4 word = "Empat Ratus " & word Case 5 word = "Lima Ratus " & word Case 6 word = "Enam Ratus " & word Case 7 word = "Tujuh Ratus " & word Case 8 word = "Delapan Ratus " & word Case 9 word = "Sembilan Ratus " & word End Select '---------------------------------If Trim(word) <> "" Then word = word & tigadigit(c) End If word0 = word & word0 c = c + 1 Loop angka2word = word0 + centword & "Rupiah" If Left(angka2word, 9) = "Satu Ribu" Then angka2word = Replace(angka2word, "Satu Ribu", "Seribu") End If angka2word = Replace(angka2word, "Juta Satu Ribu", "Juta Seribu") angka2word = Replace(angka2word, "Milyar Satu Ribu", "Milyar Seribu") angka2word = Replace(angka2word, "Trilyun Satu Ribu", "Trilyun Seribu") End Function

Anda mungkin juga menyukai