OK mas kid saya pasang di Box nih, disini
<https://app.box.com/files/0/f/0/1/f_46147092017>

file tersebut UDF dengan pecahan 2 buah UDF
1. angka(x)
yang bertugas untuk mengubah ankga menjadi huruf.
disini hanya dibatasi sampai sembilan puluh sembilan (99), karena yang
dibaca haya jam dan menit yang hanya dibatasi sampai 60.
2. ejam(y)
bertugas untuk membaca nilai jam dan menitnya.
pada fungsi ini dibatasi sampai menit ke 40. jika dibawah 40 akan dibaca
lebih 39 menit, tetapi untuk menit >=40 akan dibaca kekurangannya,
misal 10:40 akan dibaca pukul sebelas kurang 20 menit.

silahkan diubah sesuai dengan kebutuhan masing-masing.
wasalam
Thole Agus

2015-12-09 11:13 GMT+07:00 Nang Agus <[email protected]>:

>
>
> 2015-12-09 10:49 GMT+07:00 'Subroto, Matzen' [email protected]
> [belajar-excel] <[email protected]>:
>
>>
>>
>> Assalamu alaikum,
>>
>>
>>
>> Pak Agus,
>>
>>
>>
>> Bisa di share ga filenya yang sudah okeh
>>
>>
>>
>> Wassalam
>>
>> *Terima Kasih*
>>
>>
>>
>> *Matzen*
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> *From:* [email protected] [mailto:
>> [email protected]]
>> *Sent:* 09 Desember 2015 10:31
>> *To:* BExcel
>> *Subject:* Re: [belajar-excel] (Help) Cara merubah jam menjadi teks
>>
>>
>>
>>
>>
>> Asalamualaikum warahmatullah.
>>
>> Mas Kid,
>>
>> sudah selesai sesuai keinginan berdasarkan petunjuk yang diberikan.
>>
>> terima kasih.
>>
>> wasalamualaikum warahmatullah.
>>
>> Thole Agus
>>
>>
>>
>> 2015-12-09 9:46 GMT+07:00 'Mr. Kid' [email protected] [belajar-excel] <
>> [email protected]>:
>>
>>
>>
>> Wa'alaikumussalam wr wb
>>
>> mas Nang,
>>
>> Ngobrolin tentang waktu ya...
>>
>> Tipe datanya adalah datetime. Di VB/VBA bertipe date.
>>
>> Nilai serial tanggal yang menyertakan sisi wakt memang bisa disiman juga
>> dalam tipe data double.
>>
>> Jadi, bagian : (optional, tetapi bisa jadi akan bermanfaat)
>>
>> Function ejam(y As Double) As String
>>
>> tipedatanya bisa diganti menjadi Date atau dibiarkan tetap Double.
>>
>> Perbedaannya yang mudah tampak adalah respon UDF terhadap nilai yang
>> di-input-ken. Tipe data Date di VB/VBA 6 atau VBA 7 akan menerima nilai
>> numerik serial date saja, yaitu dari serial date tanggal 0100-01-01 sampai
>> 9999-12-31. Sedangkan Double akan menerima nilai numerik dengan rentang
>> yang lebih lebar, bisa sampai e300-an.
>>
>> Ketika sebuah function diberi nilai inputan yang diluar interval datatype
>> nya, makan akan segera mengembalikan error value #NUM! (sebagai hasil,
>> tanpa mengerjakan baris kode apapun yang ada di dalam function).
>>
>> Ketika mengolah data yang sejatinya berupa nilai waktu (sisi tanggal
>> saja, sisi jam saja, ataupun kedua sisinya), akan lebih konsisten tepat
>> jika diolah dalam tipe data Date dan memanfaatkan fungsi-fungsi yang khusus
>> mengolah data bertipe date dibanding dengan menggunakan yang lainnya.
>>
>> Misalnya, ingin mendapatkan nilai tahun, maka gunakan fungsi Year. Karena
>> fungsi Year menghasilkan data bertipe Integer, maka variabel penyimpannya
>> juga bertipe integer.
>>
>>
>>
>> Cara tersebut di atas akan lebih konsisten tepat dibanding dengan
>> komputasi matematis dengan nilai-nilai yang masih disimpan dalam datatype
>> double.
>>
>> Jadi, bagian :
>>
>> Dim h As Double
>> Dim m As Double
>>
>> diubah saja agar menjadi bertipe integer. Nilai jam dan menit dapat
>> ditampung oleh datatype integer. Menggunakan *Long akan lebih baik*,
>> karena konon untuk aplikasi 32 bit akan lebih cepat menggunakan tipe data
>> Long, karena di dalam VBA, tipe data integer akan disimpan dalam ruang
>> memory seluas ruang untuk datatype Long. Justru kalau menggunakan datatype
>> integer, maka akan ada proses tambahan untuk mengubahnya menjadi Long,
>> tetapi hanya tetap menyimpan interval nilai yang sempit.
>>
>>
>>
>> Kemudian, nilai jam dan menit, diperoleh dengan fungsi Hour dan Minute
>> saja.
>>
>> h=hour(y)
>>
>> m=minute(y)
>>
>> Hal ini akan lebih konsisten tepat. Apalagi jika y bertipe Date. Jadi,
>> saat mengambil nilai jam dan menit ini tidak dipengaruhi oleh tipe data nya
>> h dan m.
>>
>> Proses selanjutnya yang akan menggunakan variabel h dan m yang akan
>> dipengaruhi oleh tipe data.
>>
>>
>>
>> Kayanya, perbaikan bagian itu bisa dicoba lebih dulu. Jika hasilnya masih
>> keliru, berarti ada bagian kode setelah pengambilan nilai jam dan menit
>> yang kurang sesuai, dan membutuhkan cek baris-per-baris kode.
>>
>> Moga-moga dengan perbaikan di atas jadi ndak perlu cek baris-per-baris
>> kode ya
>>
>>
>>
>> Wassalamu'alaikum wr wb
>>
>> Kid.
>>
>>
>>
>>
>>
>> 2015-12-09 8:19 GMT+07:00 Nang Agus [email protected] [belajar-excel] <
>> [email protected]>:
>>
>>
>>
>> Dear Member BExcel,
>>
>> Asalamualaikum warahmatullah,
>>
>> Saya membuat cekrip sederhana untuk mengubah angka jam menjadi huruf,
>>
>> 16 Mei 2012 05:30:00
>>
>> Pukul lima  lewat dua puluh sembilan  menit
>>
>> 12 April 2015 08:33:00
>>
>> Pukul delapan  lewat tiga puluh dua menit
>>
>> 13 April 2015 08:21:00
>>
>> Pukul delapan  lewat dua puluh  menit
>>
>> 14 April 2015 08:39:00
>>
>> Pukul delapan  lewat tiga puluh sembilan  menit
>>
>> 15 April 2015 08:17:00
>>
>> Pukul delapan  lewat enam  belas menit
>>
>> 16 April 2015 08:02:00
>>
>> Pukul delapan  lewat satu menit
>>
>> 17 April 2015 08:40:00
>>
>> Pukul delapan  lewat tiga puluh sembilan  menit
>>
>> 18 April 2015 08:02:00
>>
>> Pukul delapan  lewat satu menit
>>
>> 19 April 2015 08:05:00
>>
>> Pukul delapan  lewat empat  menit
>>
>> 20 April 2015 08:42:00
>>
>> Pukul sembilan  kurang delapan  belas menit
>>
>> 21 April 2015 08:55:00
>>
>> Pukul sembilan  kurang lima  menit
>>
>>
>>
>> namun ada kesalahan kecil, yaitu hasilnya tidak cocok. dimanakah
>> perubahan cekripnya agar sesuai dengan hasil?
>> Option Explicit
>> Function ejam(y As Double) As String
>> Dim a As Double
>> Dim h As Double
>> Dim m As Double
>> a = y - Int(y)
>> h = Int(a * 24)
>> m = Int((a * 24 - Int(a * 24)) * 60)
>> If m < 40 Then
>> If m = 0 Then
>> ejam = "Pukul " & angka(h)
>> Exit Function
>> Else
>> End If
>> ejam = "Pukul " & angka(h) & " lewat " & angka(m) & " menit"
>> Else
>> ejam = "Pukul " & angka(h + 1) & " kurang " & angka(60 - m) & " menit"
>> End If
>> End Function
>>
>>
>> Function angka(x As Double) As String
>> Dim p As Double
>> Dim s As Double
>> Dim kuruf(9)
>> kuruf(1) = "satu"
>> kuruf(2) = "dua"
>> kuruf(3) = "tiga"
>> kuruf(4) = "empat "
>> kuruf(5) = "lima "
>> kuruf(6) = "enam "
>> kuruf(7) = "tujuh "
>> kuruf(8) = "delapan "
>> kuruf(9) = "sembilan "
>> p = Int(x / 10)
>> s = x - p * 10
>>     If x = 0 Then
>>     angka = "nol"
>>     Exit Function
>>     Else
>>     End If
>> If p = 1 Then
>>     If s = 1 Then
>>     angka = "sebelas"
>>     Exit Function
>>     Else
>>         If s = 0 Then
>>         angka = "sepuluh"
>>         Exit Function
>>         Else
>>         End If
>> angka = kuruf(s) & " belas"
>> Exit Function
>> End If
>> Else
>> If p = 0 Then
>> angka = kuruf(s)
>> Else
>> angka = kuruf(p) & " puluh " & kuruf(s)
>> End If
>> End If
>> End Function
>>
>> walaikumsalam warahmatullah.
>>
>> Agus
>>
>>
>>
>> 2015-12-01 23:31 GMT+07:00 'Mr. Kid' [email protected] [belajar-excel] <
>> [email protected]>:
>>
>>
>>
>> Wa'alaikumussalam wr wb
>>
>> Coba file yang ada disini <https://app.box.com/s/gefh85lon4avu9n66ifm>.
>>
>> Wassalamu'alaikum wr wb
>>
>> Kid
>>
>>
>>
>>
>>
>>
>>
>> 2015-11-28 22:11 GMT+07:00 [email protected] [belajar-excel] <
>> [email protected]>:
>>
>>
>>
>> Assalamualaikum....
>>
>> Mau minta tolong, apakah ada module untuk merubah jam menjadi teks di
>> excel
>>
>> Contoh:
>> 10.15 menjadi "sepuluh lewat lima belas"
>>
>> Terima kasih sebelumnya
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> ____________________________________________________________________________
>> This email has been scanned by AkzoNobel for Viruses and Spam.
>> For more information please contact your local IT Service Desk.
>>
>> ____________________________________________________________________________
>>
>> 
>>
>
>

Kirim email ke