Langsung ke konten utama

Fungsi Terbilang Dalam Rupiah (Visual Basic)

Public Function Terbilang(Angka As Double) As String
Dim strJmlHuruf$, intPecahan As Integer, strPecahan$, Urai$, Bill$, strTot$, Bil2$
Dim X As Integer, Y As Integer, z As Integer
Dim Bil1 As String
If IsNull(Angka) Then
Terbilang = ""
Exit Function
ElseIf Angka = 0 Then
Terbilang = " NOL RUPIAH"
Exit Function
ElseIf Angka < 0 Then
Terbilang = "MINUS " & Terbilang(Abs(Angka))
Exit Function
End If
strJmlHuruf = LTrim(CStr(Angka))
intPecahan = Val(Mid(CStr(Round(Angka - Int(Angka), 2)), 3, 2))
If (intPecahan = 0) Then
strPecahan = ""
Else
strPecahan = LTrim(Str(intPecahan)) + "/100 "
strJmlHuruf = LTrim(CStr(Int(Angka)))
End If
X = 0
Y = 0
Urai = ""

While (X < Len(strJmlHuruf))
Bil1 = ""
Bil2 = ""
X = X + 1
strTot = Mid(strJmlHuruf, X, 1)
Y = Y + Val(strTot)
z = Len(strJmlHuruf) - X + 1
Select Case Val(strTot)
Case 1
If (z = 1 Or z = 7 Or z = 10 Or z = 13) Then
Bil1 = "SATU "
End If
If (z = 3 Or z = 4 Or z = 6 Or z = 9 Or z = 12) Then
If z = 4 And Len(strJmlHuruf) > 4 Then
Bil1 = "SATU "
Else
Bil1 = "SE"
End If
End If
If (z = 2 Or z = 5 Or z = 8 Or z = 11 Or z = 14) Then
X = X + 1
strTot = Mid(strJmlHuruf, X, 1)
z = Len(strJmlHuruf) - X + 1
Bil2 = ""
Select Case Val(strTot)
Case 0
Bil1 = "SEPULUH "
Case 1
Bil1 = "SEBELAS "
Case 2
Bil1 = "DUA BELAS "
Case 3
Bil1 = "TIGA BELAS "
Case 4
Bil1 = "EMPAT BELAS "
Case 5
Bil1 = "LIMA BELAS "
Case 6
Bil1 = "ENAM BELAS "
Case 7
Bil1 = "TUJUH BELAS "
Case 8
Bil1 = "DELAPAN BELAS "
Case 9
Bil1 = "SEMBILAN BELAS "
End Select
End If
Case 2
Bil1 = "DUA "
Case 3
Bil1 = "TIGA "
Case 4
Bil1 = "EMPAT "
Case 5
Bil1 = "LIMA "
Case 6
Bil1 = "ENAM "
Case 7
Bil1 = "TUJUH "
Case 8
Bil1 = "DELAPAN "
Case 9
Bil1 = "SEMBILAN "
Case Else
Bil1 = ""
End Select

If (Val(strTot) > 0) Then
If (z = 2 Or z = 5 Or z = 8 Or z = 11 Or z = 14) Then
Bil2 = "PULUH "
End If
If (z = 3 Or z = 6 Or z = 9 Or z = 12 Or z = 15) Then
Bil2 = "RATUS "
End If
End If

If (Y > 0) Then
Select Case z
Case 4
Bil2 = Bil2 + "RIBU "
Y = 0
Case 7
Bil2 = Bil2 + "JUTA "
Y = 0
Case 10
Bil2 = Bil2 + "MILYAR "
Y = 0
Case 13
Bil2 = Bil2 + "TRILYUN "
Y = 0
End Select
End If
Urai = Urai + Bil1 + Bil2
Wend
Urai = Urai + strPecahan
Terbilang = Urai & "RUPIAH "
End Function

Komentar

Postingan populer dari blog ini

Soal Dan Jawaban Final Algoritma

Looping /Perulangan