CakBud: Ketika Hidup Harus Bermakna Untuk Sesama..

Membaca tanggal menjadi teks dengan VBA (date to text Conversion)

Pagi ini (14-02-2012) saya mendapatkan sebuah pertanyaan diruang komentar tulisan lama saya ..

kalo membaca date menjadi kalimat gimana mas?? misal 01/01/2012 menjadi ( satu januari dua ribu dua belas)

sebuah pertanyaan yang mengusik kesepian saya di pagi valentine.. hehhehhe..

Date to text Conversion

Hasil Akhirnya

setelah utak-atik sebentar add ins sebelumnya akhirnya pertanyaan itu terjawab sudah..

Bagaimana jawabannya? rahasia dunk.. :))

Ini jawabannya :

  1. Persiapan, siapkan kopi atau minuman apapun yang bikin anda segar + makanan ringan yang bisa bikin yummy.. :) gak nyambung yak..
  2. Jika anda sudah pernah membuat add ins terbilang, anda tinggal edit kembali melalui Visual Basic editor (ALT+F11 pada lembar kerja MS Excel Anda)

Tambahkan kode program berikut.

‘Fungsi konversi bulan dalam angka menjadi teks (nama bulan )
Function cbln(bulan As Currency)
Select Case bulan
       Case 1: cbln = “Januari “
       Case 2: cbln = “Februari “
       Case 3: cbln = “Maret “
       Case 4: cbln = “April “
       Case 5: cbln = “Mei “
       Case 6: cbln = “Juni “
       Case 7: cbln = “Juli “
       Case 8: cbln = “Agustus “
       Case 9: cbln = “September “
       Case 10: cbln = “Oktober “
       Case 11: cbln = “Nopember “
       Case 12: cbln = “Desember “
End Select
End Function

disini saya menggunakan select case, kalau mau pake if silahkan saja.

Berikutnya tambahkan juga kode program yang nantinya akan mengkonversi tanggal inputan anda menjadi teks.

‘Fungsi Konversi tanggal ke teks
Public Function bacatgl(tanggal)
Dim tgl As Currency
Dim bln As Currency
Dim thn As Currency

tgl = Day(tanggal)
bln = Month(tanggal)
thn = Year(tanggal)
bacatgl = terbilang(tgl) & cbln(bln) & terbilang(thn)
End Function

nah.. sampai disini anda sudah bisa mencoba pekerjaan anda, silahkan anda masuk ke lembar kerja excel,

misal di cell A1, ketikkan :  14/02/2012 dan pada cell A2 ketikkan =bacatgl(A1)
maka akan dihasilkan : Empat Belas Rupiah Februari Dua Ribu Dua Belas Rupiah
nah.. kenapa juga ada satuan rupiahnya :)

untuk membuang satuan rupiahnya, silahkan anda remark “+ rupiah” pada bagian baca satuan

‘Baca bagian satuan
   If satu > 0 Then
      baca = baca + ratus(satu, 1) ‘+ “rupiah “
   Else
      baca = baca ‘ + “rupiah “
   End If

Selesai sudah pekerjaan kita, tapi ada permasalahan baru, yaitu Kalau anda menggunakan Fungsi terbilang untuk angka yang menggunakan satuan rupiah jadi hilang satuan Rupiahnya :)
Silahkan dioprek sedikit lagi agar fungsi Terbilang() dan bacatgl() yang anda buat bisa berjalan dengan baik.

Catatan :

  • Jika anda merasa bingung dengan penjelasan saya diatas, mohon dibaca tulisan sebelumnya “Membuat Add In Terbilang Untuk Microsoft Excel”, karena tulisan ini adalah tulisan lanjutan.
  • Jika pada kode diatas saya menggunakan Currency untuk data bulan,  itu semata-mata hanya kemalasan saya saja, mohon tidak ditiru :)

 

Contoh Kode lengkap silahkan download sini (Setelah anda extract rename file Budi-Terbilang.xlabc menjadi Budi-Terbilang.xla)
Diskusi sangat diharapkan, silahkan di ruang komentar. Terima kasih

Share
  • Mas kalo untuk membuat hari gimana…?

  • kalau hari dalam Indonesia, bisa menggunakan weekday(DataTgl), untuk mendapatkan urutan harinya, nanti tinggal diujikan, misal

    if weekday(tgllahir)=1 then
    chari=”MInggu”
    elseif weekday(tgllahir)=2 then
    chari=”Senin”
    ….. dst..

    demikian semoga membantu..

  • pak budi, update artikel yg baru dong

    hehe lama g liat blognya bapak

  • kalo mau jadinya ada dalam krung gimana si?
    misal (duabelas November duaribu tigabelas)

  • gak jadi.. udah nemu :D tinggal nambahin “( ” & sama
    & ” )”

  • pak tolong lengkapi dengan hari dong “Budi-Terbilang.xla” nya…:)
    mis.
    “Rabu tanggal Delapan bulan Mei tahun Dua ribu tigabelas”
    maklum gaptep saya pak…terimakasih

  • @Ivan
    Buat fungsi tambahan seperti ini

    Function chari(hari As Currency)
    Select Case hari
    Case 1: chari = “Minggu ”
    Case 2: chari = “Senin ”
    Case 3: chari = “Selasa ”
    Case 4: chari = “Rabu ”
    Case 5: chari = “Kamis ”
    Case 6: chari = “Jumat ”
    Case 7: chari = “Sabtu ”

    End Select
    End Function

    Manggilnya ditambahi seperti ini

    Public Function bacatgl(tanggal)
    Dim tgl As Currency
    Dim bln As Currency
    Dim thn As Currency
    Dim hari As Currency

    tgl = Val(Day(tanggal))
    bln = Month(tanggal)
    thn = Year(tanggal)
    ctgl = terbilang(tgl)
    cthn = terbilang(thn)
    hari = Weekday(tanggal)
    bacatgl = chari(hari) & Left(ctgl, Len(ctgl) – 7) & cbln(bln) & Left(cthn, Len(cthn) – 7)
    End Function

    selengkapnya download disini
    http://untukindonesia.com/upload/Budi-Terbilang.zip

  • wahhh…terimakasih banyak cakbud…
    emang hidupmu sungguh bermakna untuk sesama…
    udah aku rasain sekarang…:)
    oia sekalian aku dpt link jemberphotography.com..keren2 foto nya om…salam jepret & kenal

  • hebaat cakbud… makasih informasinya.. ini sangat berguna sekali buat saya..

You can follow any responses to this entry through the RSS 2.0 feed.