Search This Blog

Fungsi Terbilang di Microsft Access

Fungsi terbilang adalah untuk menampilkan nilai angka pada bentuk kalimat. Pada setiap kwitansi untuk transaksi jual beli barang atau jasa biasanya kita harus menulisakan angka atau nilai transaksi dalam bentuk kalimat, misalnya “dua juta lima ratus rupiah” untuk angka Rp 2.500.000,-

Fungsi terbilang harus kita buat sendiri karena Microsoft Access tidak menyediakan fungsi ini.

Pada contoh fungsi terbilang yang dibuat di sini, fungsi akan menerima 2 buah parameter yaitu parameter angka yang akan dijadikan kelimat terbilang dan mata uang sebagai parameter kedua.

Parameter kedua berupa mata uang sebagai berikut:
  • IDR : rupiah
  • USD : dolar
  • JPY : yen
  • SGD : dolar singapura
  • GBP : poundsterling
  • EUR : euro

Cara memanggil fungsi terbilang di sini adalah:
txtVariabel = Terbilang(varAngka,varMataUang)

Script Fungsi Terbilang adalah sebagai berikut:
Public Function Terbilang(ByVal MyNumber, ByVal vMataUang)

Dim MataUang As String, cMataUang As String
Dim Rupiah, sen, Temp
Dim DecimalPlace, Count
ReDim Place(9) As String
Dim a As Long

cMataUang = vMataUang
If cMataUang = "IDR" Then
   MataUang = " rupiah"
ElseIf cMataUang = "USD" Then
   MataUang = " dolar"
ElseIf cMataUang = "JPY" Then
   MataUang = " yen"
ElseIf cMataUang = "SGD" Then
   MataUang = " dolar singapura"
ElseIf cMataUang = "GBP" Then
   MataUang = " poundsterling"
ElseIf cMataUang = "EUR" Then
   MataUang = " euro"
Else
   MataUang = " "
End If

Place(2) = " ribu"
Place(3) = " juta"
Place(4) = " milyar"
Place(5) = " trilyun"
' String representation of amount.
MyNumber = Trim(Str(MyNumber))
' Position of decimal place 0 if none.
DecimalPlace = InStr(MyNumber, ".")
' Convert sen and set MyNumber to dollar amount.
If DecimalPlace > 0 Then
   sen = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2))
   MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
End If
Count = 1
Do While MyNumber <> ""
   Temp = GetHundreds(Right(MyNumber, 3))
   If Temp <> "" Then Rupiah = Temp & Place(Count) & Rupiah
   If Left(Trim(Rupiah), 9) = "Satu Ribu" Then
       Rupiah = " Seribu" & Mid(Rupiah, 11)
   End If
   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"
   Case Else
       Rupiah = Rupiah
End Select
Select Case sen
   Case ""
       sen = "" ' dan nol sen"
   Case Else
       sen = " koma" & sen
End Select
Terbilang = Trim(Rupiah & sen & MataUang)

End Function

Fungsi Terbilang di sini memanggil fungsi lain yaitu fungsi GetHundreds(), GetDigit() dan GetTens().

Pada contoh program yang dapat didownload di sini akan didemonstrasikan penggunaan fungsi terbilang ini pada sebuah form. Pada form ini ada text box untuk mengisi angka yang akan ditampilkan kalimat terbilangnya, satu buah combo box pilihan jenis mata uang, tombol untuk menjalankan atau memanggil fungsi terbilang dan menampilkan hasil dari fungsi terbilang pada text box terbilang.

DOWNLOAD CONTOH PROGRAM FUNGSI TERBILANG

Salam
Selamat mencoba

last update 16 April 2013

5 comments:

Anonymous said...

Terima kasih, fungsi terbilangnya sudah saya gunakan, tetapi saya memerlukan fungsi terbilang dengan tidak menggunakan mata uang. Bagaimana caranya? Trim's sangat membantu

tes said...

Anda tinggal mengosongkan parameter kedua. Karena parameter kedua adalah mata uang.

eko qfndf said...

maaf, saya orang baru di dunia database. mohon pencerahan. saya iseng2 bikin kartu anggota berisi biodata dan foto di folder foto. pertanyaan sy, bgmn caranya me-link-kan foto ke folder yg berisi foto trsbt(klo mau dicetak)? bisakah kita merubah background ms.access dgn gambar, baik di form maupun ketika dicetak? mohon bantuannya dan terima kasih sebelumnya. (krn sy tdk punya blog, jd ini imel sy: eko_3140@ymail.com)

andri_sugilar said...

Mas Code VBA nya ga jalan ya pas saya coba...ada yg salah kayanya di script (GetTens) mohon balasannya ya mas,,,thank

Disamarkan said...

trims infony ,
tp misal 20 = duapuluh tanpa spasi gmn iya?