Membuat fasilitas angka terbilang di visual basic 6.0???kenapa enggak…??
Angka terbilang disini yang dimaksud seperti yang biasa dituliskan jika kita menuliskan kuitansi,ataupun lainnya. Dimana selain ada cetakan dalam bentuk angka, ada pula yg bertuliskan jumlah dengan huruf.
Contohnya jika ditulis angka 1, maka akan otomatis di konfersi menjadi ‘satu’…
Source code dapat anda download di akhir artikel.
Silahkan ikuti langkahnya jika kalian ingin mempelajari tentang pembuatan angka tebilang ini.
Design form :
Komponen yg digunakan adalah 2 buah Textbox
Kemudian ketik kan listing berikut:
atau
atau
Klik Like/share jika anda menyukai tulisan Share to FB
Angka terbilang disini yang dimaksud seperti yang biasa dituliskan jika kita menuliskan kuitansi,ataupun lainnya. Dimana selain ada cetakan dalam bentuk angka, ada pula yg bertuliskan jumlah dengan huruf.
Contohnya jika ditulis angka 1, maka akan otomatis di konfersi menjadi ‘satu’…
Source code dapat anda download di akhir artikel.
Silahkan ikuti langkahnya jika kalian ingin mempelajari tentang pembuatan angka tebilang ini.
Design form :
Komponen yg digunakan adalah 2 buah Textbox
Kemudian ketik kan listing berikut:
- Public Function TerbilangDesimal(InputCurrency As String, Optional
- MataUang As String = "rupiah") As String
- Dim strInput As String
- Dim strBilangan As String
- Dim strPecahan As String
- On Error GoTo Pesan
- Dim strValid As String, huruf As String * 1
- Dim i As Integer
- 'Periksa setiap karakter yg diketikkan ke kotak
- 'UserID
- strValid = "1234567890,"
- For i% = 1 To Len(InputCurrency)
- huruf = Chr(Asc(Mid(InputCurrency, i%, 1)))
- If InStr(strValid, huruf) = 0 Then
- Set AngkaTerbilang = Nothing
- MsgBox "Harus karakter angka!", _
- vbCritical, "Karakter Tidak Valid"
- Exit Function
- End If
- Next i%
- If InputCurrency = "" Then Exit Function
- If Len(Trim(InputCurrency)) > 15 Then GoTo Pesan
- strInput = CStr(InputCurrency) 'Konversi ke string
- 'Periksa apakah ada tanda "," jika ya berarti pecahan
- If InStr(1, strInput, ",", vbBinaryCompare) Then
- strBilangan = Left(strInput, InStr(1, strInput, _
- ",", vbBinaryCompare) - 1)
- 'strBilangan = Right(strInput, InStr(1, strInput, _
- ' ".", vbBinaryCompare) - 2)
- strPecahan = Trim(Right(strInput, Len(strInput) - Len(strBilangan) -
- 1))
- If MataUang <> "" Then
- If CLng(Trim(strPecahan)) > 99 Then
- strInput = Format(Round(CDbl(strInput), 2), "#0.00")
- strPecahan = Format((Right(strInput, Len(strInput) -
- Len(strBilangan) - 1)), "00")
- End If
- If Len(Trim(strPecahan)) = 1 Then
- strInput = Format(Round(CDbl(strInput), 2), _
- "#0.00")
- strPecahan = Format((Right(strInput, _
- Len(strInput) - Len(strBilangan) - 1)), "00")
- End If
- If CLng(Trim(strPecahan)) = 0 Then
- TerbilangDesimal = (KonversiBilangan(strBilangan) & MataUang & " "
- & KonversiBilangan(strPecahan))
- Else
- TerbilangDesimal = (KonversiBilangan(strBilangan) & MataUang & " " &
- KonversiBilangan(strPecahan) & "sen")
- End If
- Else
- TerbilangDesimal = (KonversiBilangan(strBilangan) & "koma " &
- KonversiPecahan(strPecahan))
- End If
- Else
- TerbilangDesimal = (KonversiBilangan(strInput))
- End If
- Exit Function
- Pesan:
- TerbilangDesimal = "(maksimal 15 digit)"
- End Function
- 'Fungsi ini untuk mengkonversi nilai pecahan (setelah 'angka 0)
- Private Function KonversiPecahan(strAngka As String) As String
- Dim i%, strJmlHuruf$, Urai$, Kar$
- If strAngka = "" Then Exit Function
- strJmlHuruf = Trim(strAngka)
- Urai = ""
- Kar = ""
- For i = 1 To Len(strJmlHuruf)
- 'Tampung setiap satu karakter ke Kar
- Kar = Mid(strAngka, i, 1)
- Urai = Urai & Kata(CInt(Kar))
- Next i
- KonversiPecahan = Urai
- End Function
- 'Fungsi ini untuk menterjemahkan setiap satu angka ke 'kata
- Private Function Kata(angka As Byte) As String
- Select Case angka
- Case 1: Kata = "satu "
- Case 2: Kata = "dua "
- Case 3: Kata = "tiga "
- Case 4: Kata = "empat "
- Case 5: Kata = "lima "
- Case 6: Kata = "enam "
- Case 7: Kata = "tujuh "
- Case 8: Kata = "delapan "
- Case 9: Kata = "sembilan "
- Case 0: Kata = "nol "
- End Select
- End Function
- 'Ini untuk mengkonversi nilai bilangan sebelum pecahan
- Private Function KonversiBilangan(strAngka As String) As String
- Dim strJmlHuruf$, intPecahan As Integer, strPecahan$, Urai$, Bil1$,
- strTot$, Bil2$
- Dim X, Y, z As Integer
- If strAngka = "" Then Exit Function
- strJmlHuruf = Trim(strAngka)
- X = 0
- Y = 0
- Urai = ""
- While (X < Len(strJmlHuruf))
- X = X + 1
- strTot = Mid(strJmlHuruf, X, 1)
- Y = Y + Val(strTot)
- z = Len(strJmlHuruf) - X + 1
- Select Case Val(strTot)
- 'Case 0
- ' Bil1 = "NOL "
- Case 1
- If (z = 1 Or z = 7 Or z = 10 Or z = 13) Then
- Bil1 = "satu "
- ElseIf (z = 4) Then
- If (X = 1) Then
- Bil1 = "se"
- Else
- Bil1 = "satu "
- End If
- ElseIf (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
- Else
- Bil1 = "se"
- 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 "
- ElseIf (z = 3 Or z = 6 Or z = 9 Or z = 12 Or z = 15) Then
- Bil2 = "ratus "
- Else
- Bil2 = ""
- End If
- Else
- Bil2 = ""
- 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
- KonversiBilangan = Urai
- End Function
- Private Sub Text1_Change() 'Isi besar uang diulangi 'dengan terbilang
- huruf...
- Text2.Text = TerbilangDesimal(Text1.Text)
- End Sub
atau
atau
Klik Like/share jika anda menyukai tulisan
Mas bro...ane mau nanya..klw kita ingin buat tanggal (seperti form identitas) dgn pilihan dropdown (combo box) itu gmn yha??
BalasHapusbisa minta program listing nya ga?? ane masi newbe, bru2 belajar otodidak.
maksudnya gimana mas??combo box tgl bulan tahun gitu yah?????
Hapusom mohon bantuanya, saya mau nanya lagi saya bingung banget sama tugas saya yang ini.
BalasHapusjadi kita di suruh menentukan tanggal berapa data kita harus selesai, misalnya yah
aplikasi terdiri dari 1dtpicker, 1label dan 1 textbox
jadi jika kita menginputkan tanggal 8/januari pada dt picker dan
4 pada textbox maka label menjadi 11/januari
5 pada textbox maka label menjadi 14/januari
jadi sabtu dan minggu tidak boleh tercantum atau ikut terhitung. dan tanggal selesai itu tidak mungkin dimulai dari hari sabtu/minggu dan tidak mungkin juga selesai pada hari sabtu/minggu. mohon om bantuanya. saya butuh banget :((
mas broo,,ada yg versi vb.net nya ggk???
BalasHapusga ada mas...
Hapus