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' mr.nm...@gmail.com [belajar-excel] <
belajar-excel@yahoogroups.com>:

>
>
> 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 nanga...@gmail.com [belajar-excel] <
> belajar-excel@yahoogroups.com>:
>
>>
>>
>> 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' mr.nm...@gmail.com [belajar-excel] <
>> belajar-excel@yahoogroups.com>:
>>
>>>
>>>
>>> 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 zainal_abid...@yahoo.com [belajar-excel] <
>>> belajar-excel@yahoogroups.com>:
>>>
>>>>
>>>>
>>>> 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
>>>>
>>>
>>>
>>
> 
>
  • [belajar-ex... zainal_abid...@yahoo.com [belajar-excel]
    • Re: [b... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
      • Re... Nang Agus nanga...@gmail.com [belajar-excel]
        • ... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
          • ... Nang Agus nanga...@gmail.com [belajar-excel]
            • ... 'Subroto, Matzen' matzen.subr...@akzonobel.com [belajar-excel]
              • ... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
                • ... 'Subroto, Matzen' matzen.subr...@akzonobel.com [belajar-excel]
              • ... Nang Agus nanga...@gmail.com [belajar-excel]
                • ... Nang Agus nanga...@gmail.com [belajar-excel]
                • ... 'Subroto, Matzen' matzen.subr...@akzonobel.com [belajar-excel]
                • ... Toby kenzo tobyke...@yahoo.co.id [belajar-excel]
                • ... Toby kenzo tobyke...@yahoo.co.id [belajar-excel]
    • Re: [b... Zainal Abidin M zainal_abid...@yahoo.com [belajar-excel]

Kirim email ke