Salah
satu fungsi angka terbilang yang sering kita temukan adalah dalam penulisan
kwitansi, misal 1.000.000,- ditulis dengan kalimat "Satu Juta
Rupiah". Pada kesempatan kali ini saya akan membahas bagaimana cara
membuat angka terbilang dengan menggunakan vb.net.
- Buatlah sebuah project baru
- Buatlah sebuah form dengan bentuk sebagai berikut
Ketiklah
atau copy coding dibawah ini :
Imports
System.Data.OleDb
Public Class Form1
Public conn As
OleDbConnection
Public cmd As
OleDbCommand
Public dr As
OleDbDataReader
Public Sub Koneksi()
conn = New OleDbConnection("provider=microsoft.ace.oledb.12.0;data
source=dbterbilang.accdb")
conn.Open()
End Sub
Public Function
Terbilang(ByVal nilai As
Long) As String
Dim bilangan As String() = {"",
"Satu", "Dua",
"Tiga", "Empat",
"Lima", _
"Enam", "Tujuh",
"Delapan", "Sembilan", "Sepuluh",
"Sebelas"}
If nilai < 12 Then
Return " "
& bilangan(nilai)
ElseIf nilai < 20 Then
Return Terbilang(nilai - 10) & " Belas"
ElseIf nilai < 100 Then
Return (Terbilang(CInt((nilai
\ 10))) & " Puluh") +
Terbilang(nilai Mod 10)
ElseIf nilai < 200 Then
Return "
Seratus" & Terbilang(nilai - 100)
ElseIf nilai < 1000 Then
Return (Terbilang(CInt((nilai
\ 100))) & " Ratus") +
Terbilang(nilai Mod 100)
ElseIf nilai < 2000 Then
Return "
Seribu" & Terbilang(nilai - 1000)
ElseIf nilai < 1000000 Then
Return (Terbilang(CInt((nilai
\ 1000))) & " Ribu") +
Terbilang(nilai Mod 1000)
ElseIf nilai < 1000000000 Then
Return (Terbilang(CInt((nilai
\ 1000000))) & " Juta") +
Terbilang(nilai Mod 1000000)
ElseIf nilai < 1000000000000 Then
Return (Terbilang(CInt((nilai
\ 1000000000))) & " Milyar") +
Terbilang(nilai Mod 1000000000)
ElseIf nilai < 1000000000000000 Then
Return (Terbilang(CInt((nilai
\ 1000000000000))) & " Trilyun")
+ Terbilang(nilai Mod 1000000000000)
Else
Return ""
End If
End Function
Private Sub
TextBox1_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles
TextBox1.KeyPress
On Error Resume Next
If e.KeyChar = Chr(13) Then
TextBox2.Text = Terbilang(TextBox1.Text)
TextBox1.Text = FormatNumber(TextBox1.Text, 0)
Button1.Focus()
End If
End Sub
Private Sub
Button1_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
Button1.Click
Try
Call Koneksi()
cmd =
New OleDbCommand("insert
into table1 values ('" & TextBox1.Text & "','" & TextBox2.Text & "')", conn)
cmd.ExecuteNonQuery()
TextBox1.Clear()
TextBox2.Clear()
TextBox1.Focus()
Catch ex As Exception
MsgBox(ex.Message)
TextBox1.Focus()
End Try
End Sub
End Class
EmoticonEmoticon