Fungsi Terbilang Di Microsoft Access

Terima kasih atas tanggapan yang menyenangkan di artikel Membuat Fungsi Terbilang di Microsoft Excel, melalui email atau komentar. Lalu di halaman ini, ada permintaan atas artikel pembuatan fungsi terbilang di Microsoft Access, kebetulan sih saya pernah membuat proyek dengan Access yang menyertakan fungsi terbilang tersebut di dalamnya (jadi saya tinggal membongkar arsip saya karena proyek ini sudah berumur 6 tahun ketika saya pertama kali menceburkan diri ke dunia programming, saya ngga begitu ingat apakah script ini dari mailing list atau buat sendiri, tetapi kalau ada yang merasa ini adalah script anda, tolong kasi comment disini agar saya pasang link-nya).

Dan inilah langkah yang harus anda ambil untuk memasang fungsi terbilang ini di Microsoft Access:

  1. Buka Microsoft Access dulu (ya pastilah hehehe…)
  2. Klik tab Modules, lalu buatlah satu module baru atau anda bisa memasukan script terbilang ini ke dalam module yang sudah ada. Untuk membuat module baru, klik tombol New di tab Modules.
    Membuat Module baru
  3. Lalu copy-paste script dibawah ini ke dalam module baru anda atau anda bisa mengunduh script tersebut dalam bentuk teks, ketik script tersebut pada Microsoft Visual Basic for Application Editor yang sedang terbuka.
    Public Function ubah_terbilang(xbil As Double)
       Dim nilai, i, j, k, hasil$, HasilAkhir$, Bilangan#, Digit, Rp$, Bil$
     
       If IsNull(xbil) Then
          ubah_terbilang = Null
          Exit Function
       End If
     
    'pengelompokan
        Dim Kel$(1 To 6), Angka$(1 To 9), Sat$(1 To 3)
        Kel$(1) = "Biliun "
        Kel$(2) = "Triliun "
        Kel$(3) = "Miliar "
        Kel$(4) = "Juta "
        Kel$(5) = "Ribu "
        Kel$(6) = ""
     
    'data angka
        Angka$(1) = "Satu "
        Angka$(2) = "Dua "
        Angka$(3) = "Tiga "
        Angka$(4) = "Empat "
        Angka$(5) = "Lima "
        Angka$(6) = "Enam "
        Angka$(7) = "Tujuh "
        Angka$(8) = "Delapan "
        Angka$(9) = "Sembilan "
     
    'satuan
        Sat$(1) = "Ratus "
        Sat$(2) = "Puluh "
        Sat$(3) = ""
     
    'mulai
       Bilangan# = Val(xbil)
       HasilAkhir$ = ""
       GoSub HitungHuruf
       If hasil$ <> "" Then
        HasilAkhir$ = hasil$ + "Rupiah"
       End If
     
    'hitung pecahan
       Bilangan# = Fix((Bilangan# - Fix(Bilangan#) + 0.005) * 100#)
       If Bilangan# > 0 Then
          GoSub HitungHuruf
          If hasil$ <> "" Then
            HasilAkhir$ = HasilAkhir$ + " " + hasil$ + "Sen"
          End If
       End If
     
    ubah_terbilang = HasilAkhir$
    Exit Function
     
    HitungHuruf:
        Rp$ = Right$(String$(18, "0") + LTrim$(Str$(Fix(Bilangan#))), 18)
        hasil$ = ""
     
        If Val(Rp$) = 0 Then Return
     
    'blg bulat
       For i = 1 To 6
          Bil$ = Mid$(Rp$, i * 3 - 2, 3)
     
          If Val(Bil$) = 1 And i = 5 Then
             hasil$ = hasil$ + "Seribu "
     
          ElseIf Val(Bil$) <> 0 Then
             For j = 1 To 3
                Digit = Val(Mid$(Bil$, j, 1))
                If j = 2 And Right$(Bil$, 2) = "10" Then
                   hasil$ = hasil$ + "Sepuluh "
                   Exit For
     
                ElseIf j = 2 And Right$(Bil$, 2) = "11" Then
                   hasil$ = hasil$ + "Sebelas "
                   Exit For
     
                ElseIf j = 2 And Mid$(Bil$, 2, 1) = "1" Then
                   hasil$ = hasil$ + Angka$(Val(Right$(Bil$, 1))) + "Belas "
                   Exit For
     
                ElseIf Digit = 1 And j = 1 Then
                   hasil$ = hasil$ + "Seratus "
     
                ElseIf Digit <> 0 Then
                   hasil$ = hasil$ + Angka$(Digit) + Sat$(j)
     
                End If
             Next
             hasil$ = hasil$ + Kel$(i)
          End If
       Next
       Return
    End Function

    Ketik script-nya

  4. Lalu tutup jendela VBA editor.
  5. Nah sekarang tinggal mencoba fungsi ini.

Ada dua cara untuk mencoba fungsi ini di Microsoft Access, melalui Form atau Report. Nah, kita akan mencoba yang pertama yaitu melalui Form:

  1. Buat form baru dengan cara klik tab Forms lalu klik tombol New.
    Buat form baru
  2. Di form yang baru tersebut, buat 2 textbox baru. Secara default, maka textbox pertama akan dinamai Text0 dan teks kedua dinamai dengan Text2, anda bisa merubahnya sendiri tetapi dalam contoh ini saya menganggap kita akan memakai nama default yang diberikan.
    Form baru
  3. Lalu buka Microsoft Visual Basic Editor dengan klik menu View -> Code.
  4. Pilih control Text0 yang akan kita tangkap eventnya.
    Ubah control
  5. Lalu ubah event yang akan di tangkap ke Change.
    Ubah event-nya
  6. Lalu ketikan script: Text2.Value = ubah_terbilang(Text0.Text) di dalam blok Private Sub Text0_Change().
    script di event change
  7. Tutup jendela Microsoft Visual Basic editor-nya.
  8. Ubah view form ke Form View.
  9. Lalu coba ketikan angka di Text0, kalau anda melakukannya dengan benar maka hasilnya akan muncul di Text2.
    Hasil form

Nah, dari contoh sederhana diatas anda dapat mengembangkannya sendiri menjadi aplikasi yang lebih baik. Untuk implementasi kedua adalah pada Report, penggunaannya sebagai berikut:

  1. Buat report baru dengan klik tab Reports lalu klik New.
    Buat report baru
  2. Setelah semua di buat, dan misalnya anda ingin mengimplementasikan fungsi terbilang (yang diwakili pada textbox txtTerbilang) ini untuk total transaksi yang tercantum di control txtTOTAL, anda tinggal mengetikan =ubah_terbilang([txtTOTAL].[Value]) di Control Source dari txtTerbilang.
    implementasi di report
  3. Sekarang tinggal coba membuka report tersebut, kalau anda melakukannya dengan benar maka ‘penampakannya’ akan seperti gambar yang saya pasang sebagai logo artikel ini diatas.

Semoga artikel ini dapat sedikit membantu bagi rekan-rekan yang sedang mencari fungsi terbilang ini untuk proyek Microsoft Access anda.

107 comments

  1. Artikel yang bagus mas… Sudah saya coba pake Access 2003 bisa tapi di Access 2007 kok ga bisa ya mas,, tolong dong ajarin langkah2nya…

  2. matur tq atas artikelnya mas Edi Susanto,sangat bermanfaat sekali buat saya yg belum paham dengan msacces. smg msh ada artikl yg lain untuk share ilmunya.

  3. terima kasih telah berbagi ilmunya. Untuk bentuk terbilang pada report sukses berhasil terima kasih. Tapi Ijinkan saya bertanya. Jika txt0 berupa nilai yang diperoleh dari subform yang telah diotomatiskan tampil pada form induknya, listing program untuk form yang bapak berikan tidak berhasil.contoh nya textbox yang control sourcenya =[QryNota subform].[Form]![TotalBiaya]. Mohon bantuannya.

  4. Om saya kesulitan melakukan penjumlahan di query acces….contoh 3,02 +0,45 +5,12+1,33 di queri selalu kembali menjadi bulat setiap kolomnya setiap diketik.trimakasih sebelumnnya

Leave a Reply

Your email address will not be published. Required fields are marked *

CommentLuv badge

This site uses Akismet to reduce spam. Learn how your comment data is processed.