Untuk membuat sebuah terbilang tanggal misalnya seperti tulisan
Pada hari ini,Selasa Dua Puluh Tiga Bulan Januari Tahun Dua Ribu Dua Puluh Empat
Sebenarnya bisa dibuat tanpa perlu menambahkan UDF baru lagi, karena UDF yang dibutuhkan untuk membuat tulisan diatas dari data sebuah tanggal cukup dengan UDF Terbilang saja.
Jadi jika kamu sudah memiliki UDF terbilang, sudah bisa membuat tulisan diatas berdasarkan nilai sebuah Tanggal di Cell.
Tetapi memang rumusnya akan sedikit panjang, karena Terbilang hanya digunakan untuk melakukan terbilang pada tanggal dan tahun saja.
Sedangkan untuk tulisan hari dan juga bulan bisa langsung menggunakan rumus bawaan Excel rumus TEXT.
Contoh penggunaan rumusnya bisa dilihat dibawah ini.
="Pada hari ini, " & TEXT(C2,"[$-421]dddd") & Terbilang(DAY(C2)) &
" Bulan " & TEXT(C2,"[$-421]mmmm") & " Tahun " & Terbilang(YEAR(C2))
Pada rumus diatas, saya hanya menggunakan UDF dari terbilang saja, sisanya saya menggunakan rumus bawaan Excel yaitu rumus TEXT dengan LCID Indonesia untuk membuat hari dan bulan menjadi tebilang.
Dengan kondisi seperti rumus diatas, masih banyak dari teman-teman pengguna Excel masih kesulitan membuat rumus seperti diatas dan banyak menanyakan bagaimana membuat UDF Terbilang untuk Tanggal agar rumus bisa dengan mudah dibuat.
Konsep untuk membuat UDF terbilang Tanggal ini, sebenarnya tidak akan jauh dari logika rumus diatas malah bisa dibilang sama.
Karena struktur rumusnya juga sama.
UDF dibuat hanya untuk memudahkan penulisan rumus agar penulisan rumus hanya menggunakan satu fungsi saja, tidak seperti rumus yang panjang diatas.
UDF untuk terbilang tanggal bisa dibuat seperti dibawah ini.
Function TerbilangTanggal(N As Long) as String Dim Wf As WorksheetFunction Set Wf = WorksheetFunction TerbilangTanggal = "Pada hari ini," & Wf.Text(N, "[$-421]dddd") _ & Terbilang(Day(N)) _ & " Bulan " & Wf.Text(N, "[$-421] mmmm") _ & " Tahun " & Terbilang(Year(N)) End Function
Catatan :
Pada Fungsi diatas menggunakan Fungsi lain yaitu Fungsi Terbilang. Karena itu, agar UDF Terbilang Tanggal diatas bisa bekerja perlu ditambahkan juga UDF Terbilang pada Module.
Jika kamu sudah memiliki Fungsi Terbilang didalam Module baik module yang sama atau pun Module yg berbeda asal masih dalam satu file yang sama, ataupun terbilang dari Addin maka tidak perlu lagi menambahkan Fungsi terbilang.
Tetapi jika pada File Excel yang akan digunakan belum ada Fungsi terbilang, maka tambahkan juga Script Terbilang berikut ini kedalam Module.
Function Terbilang(N As Long) As String 'max 2.147.483.647 Dim satuan As Variant, Minus As Boolean On Error GoTo terbilang_error satuan = Array("", "Satu", "Dua", "Tiga", "Empat", "Lima", "Enam", "Tujuh", "Delapan", "Sembilan", "Sepuluh", "Sebelas") If N < 0 Then Minus = True N = N * -1 End If Select Case N Case 0 To 11 Terbilang = " " + satuan(Fix(N)) Case 12 To 19 Terbilang = Terbilang(N Mod 10) + " Belas" Case 20 To 99 Terbilang = Terbilang(Fix(N / 10)) + " Puluh" + Terbilang(N Mod 10) Case 100 To 199 Terbilang = " Seratus" + Terbilang(N - 100) Case 200 To 999 Terbilang = Terbilang(Fix(N / 100)) + " Ratus" + Terbilang(N Mod 100) Case 1000 To 1999 Terbilang = " Seribu" + Terbilang(N - 1000) Case 2000 To 999999 Terbilang = Terbilang(Fix(N / 1000)) + " Ribu" + Terbilang(N Mod 1000) Case 1000000 To 999999999 Terbilang = Terbilang(Fix(N / 1000000)) + " Juta" + Terbilang(N Mod 1000000) Case Else Terbilang = Terbilang(Fix(N / 1000000000)) + " Milyar" + Terbilang(N Mod 1000000000) End Select If Minus = True Then Terbilang = "Minus" + Terbilang End If Exit Function terbilang_error: MsgBox Err.Description, vbCritical, "Terbilang Error" End Function
Untuk menjalankan UDF Terbilang Tanggal, masih sama seperti UDF pada umumnya.
Tinggal tuliskan Nama fungsi diikuti Cell Tanggal, untuk contohnya bisa dilihat dibawah ini.
=TerbilangTanggal(CellTanggal)