Di Access, fungsi DateSerial digunakan untuk memperoleh tanggal tertentu yang diinginkan. Tanggal ini diperoleh dengan menggunakan angka tahun, bulan, dan hari. Pada prakteknya, ketiga angka itu tidak harus dituliskan dalam bentuk angka murni seutuhnya, tetapi bisa berbentuk formula tertentu sehingga proses perhitungannya menjadi unik.
Sintaks penulisan DateSerial adalah sebagai berikut:
Keterangan:
Year (tahun): wajib diisi, berupa angka dengan tipe data Integer, rangenya antara 100 s.d. 9999. Year bisa berupa angka atau formula, yang penting hasilnya terletak antara 100 s.d. 9999.
Month (bulan): wajib diisi, berupa angka dengan tipe data Integer, rangenya antara 1 s.d. 12. Month bisa berupa angka atau formula, yang penting hasilnya terletak antara 1 s.d. 12.
Day (hari): wajib diisi, berupa angka dengan tipe data Integer, rangenya antara 1 s.d. 31. Day bisa berupa angka atau formula, yang penting hasilnya terletak antara 1 s.d. 12.
Kita dapat memasukkan angka di luar range yang disepakati di atas, tetapi hasilnya malah akan membingunkan, misalnya:
dateserial(2017,14,32) akan memberikan nilai 3/4/2018 (4 Maret 2018). Urutan perhitungannya sebagai berikut:
Memasukkan 2 digit untuk Year
Angka tahun dengan dua digit (00 s.d. 99) disesuaikan dengan pengaturan pada sistem operasi Windows. Secara default, nilai 00 s.d. 29 dianggap sebagai tahun 2000 s.d. 2029. Sedangkan nilai 30 s.d. 99 dianggap sebagai tahun 1930 s.d. 1999. Oleh karena itu, supaya tidak membingungkan, sebaiknya kita menuliskan angka tahun dengan menggunakan empat digit, misalnya 1929, 2001, 1898, dan seterusnya.
Memasukkan angka dengan formula
Berturut-turut, Access memproses Year, Month, dan terakhir Day. Jadi, bila kita memasukkan salah satu nilai dari Year, Month, atau Day dengan formula tertentu, Access memprosesnya dengan urutan itu. Misalnya seperti ini:
DateSerial (2020-3, 12 - 2, 1 - 1) hasilnya adalah 9/30/2017 (30 September 2017), urutan perhitungannya seperti ini:
Bila tanggal sekarang yang dinyatakan dengan fungsi Now() = 4-Dec-2017, maka:
Penggunaan fungsi DateSerial digabungkan dengan fungsi lain yang berkaitan dengan tanggal, seperti Year, Month, dan Day. |
DateSerial (Year, Month, Day)
Keterangan:
Year (tahun): wajib diisi, berupa angka dengan tipe data Integer, rangenya antara 100 s.d. 9999. Year bisa berupa angka atau formula, yang penting hasilnya terletak antara 100 s.d. 9999.
Month (bulan): wajib diisi, berupa angka dengan tipe data Integer, rangenya antara 1 s.d. 12. Month bisa berupa angka atau formula, yang penting hasilnya terletak antara 1 s.d. 12.
Day (hari): wajib diisi, berupa angka dengan tipe data Integer, rangenya antara 1 s.d. 31. Day bisa berupa angka atau formula, yang penting hasilnya terletak antara 1 s.d. 12.
Keunikan fungsi DateSerial
Memasukkan angka di luar range yang disepakatiKita dapat memasukkan angka di luar range yang disepakati di atas, tetapi hasilnya malah akan membingunkan, misalnya:
dateserial(2017,14,32) akan memberikan nilai 3/4/2018 (4 Maret 2018). Urutan perhitungannya sebagai berikut:
- Month 14 dianggap sebagai bulan 2 atau Februari yang berasal dari14-12=2, di mana 12 adalah jumlah bulan dalam setahun. Karena sudah melebih 12 bulan dalam setahun, maka angka 12 dianggap setahun dan ditambahkan ke tahun 2017 menjadi 2018 sedangkan 2 sisanya dimasukkan sebagai bulan Februari.
- Di sisi lain bulan Februari 2108 berakhir pada tanggal 28. Jadi Day 32-28 adalah 4 yang berarti 4 hari setelah tanggal 28 Februaru 2018 atau 4 Maret 2018. Inilah hasil perhitungan di atas. Bingung bukan?
dateserial(0,0,0) menghasilkan tanggal 11/30/1999 (30 November 1999) dateserial(0,0,1) menghasilkan tanggal 12/1/1999 (1 Desember 1999) dateserial(2010,-1,1) menghasilkan tanggal 11/1/2009 (1 November 2009)Bingung kan? Jadi supaya tidak membingunkan, masukkan angka sesuai dengan range yang disepakati di atas.
Memasukkan 2 digit untuk Year
Angka tahun dengan dua digit (00 s.d. 99) disesuaikan dengan pengaturan pada sistem operasi Windows. Secara default, nilai 00 s.d. 29 dianggap sebagai tahun 2000 s.d. 2029. Sedangkan nilai 30 s.d. 99 dianggap sebagai tahun 1930 s.d. 1999. Oleh karena itu, supaya tidak membingungkan, sebaiknya kita menuliskan angka tahun dengan menggunakan empat digit, misalnya 1929, 2001, 1898, dan seterusnya.
Memasukkan angka dengan formula
Berturut-turut, Access memproses Year, Month, dan terakhir Day. Jadi, bila kita memasukkan salah satu nilai dari Year, Month, atau Day dengan formula tertentu, Access memprosesnya dengan urutan itu. Misalnya seperti ini:
DateSerial (2020-3, 12 - 2, 1 - 1) hasilnya adalah 9/30/2017 (30 September 2017), urutan perhitungannya seperti ini:
- Awalnya, tahun 2020 dikurangi 3 menjadi 2017, bulannya masih 12, tanggal juga masih 1, sehingga fungsi DateSerial (2017, 12, 1) adalah tahun 2017, bulan Desember, tanggal 1.
- DateSerial (2017, 12-2, 1) di mana bulan Desember 2017 dikurangi (dimundurkan) dua bulan jadi bulan Oktober 2017, dan tanggal 1. Setelah itu
- DateSerial (2017, 10, 1 - 1) tgl 1 Oktober 2017 dikurangi (dimundurkan) satu hari menjadi 30 September 2017.
- Awalnya, tahun 2020 dikurangi 3 menjadi 2017, bulannya masih 1, tanggalnya juga masih 1, sehinga fungsi DateSerial (2017, 1, 1) adalah tahun 2017, bulan Januari, tanggal 1.
- DateSerial (2017, 1-2, 1 - 1) di mana bulan Januari 2017 dikurangi (dimundurkan) dua bulan jadi bulan November 2016. Setelah itu,
- DateSerial (2016, 11, 1 - 1) tgl 1 November 2016 dikurangi (dimundurkan) satu hari menjadi 30 Oktober 2016.
Fungsi | Hasil |
DateSerial (30, 1, 2) | 02 Jan 1930 |
DateSerial (99, 1, 2) | 02 Jan 1999 |
DateSerial (0, 1, 2) | 02 Jan 2000 |
DateSerial (29, 1, 2) | 02 Jan 2029 |
DateSerial (2017,11-2,4) | 04 Sep 2017 |
DateSerial (2017,1,1-1) | 31 Dec 2016 |
DateSerial (2017-1,1,1-1) | 31 Dec 2015 |
DateSerial (2017-1,1-1,1-1) | 30 Nov 2015 |
DateSerial (2017,11+1,31+1) | 01 Jan 2018 |
- 2 hari lalu ditulis: DateSerial (Year(Now()), Month(Now()),Day(Now())-2), hasilnya adalah 02 Dec 2017.
- 2 bulan lalu ditulis: DateSerial (Year(Now()), Month(Now())-2,Day(Now())), hasilnya adalah 04 Oct 2017.
- 2 tahun yang akan datang ditulis: DateSerial (Year(Now())+2, Month(Now()),Day(Now())), hasilnya adalah 04 Dec 2019.
Comments
Post a Comment