Tecnologia, programação e muito Visual FoxPro.

sábado, 19 de novembro de 2011

]] XL-mania [[ SATU RUMUS YG BISA MEMBUAT GRID KALENDER BULANAN

SATU RUMUS YG BISA MEMBUAT GRID KALENDER BULANAN

(Kelas: New Milis Members & New Excel User)

 

Di  milis ini sudah ada beberapa kali penayangan RUMUS KALENDER.

Maksudnya rumus untuk membuat Kalender Bulanan, yang  memuat daftar tanggal selama bulan tertentu.

Kemudian dengan mengubah komponen Bulan dan/ Tahun pada data tanggalnya, maka "jleg!" seketika bulan kalender berubah menayangkan daftar tanggal untuk bulan lain.

Pada posting-posting sebelumnya dlm matrik 7 x 6 cell harus berisi BEBERAPA rumus, kali ini kita tawarkan: Matrik / Grid Kalender  7 x 6  yang hanya perlu satu RUMUS saja, yaitu rumus berupa ARRAY FORMULA:

 

=A1-WEEKDAY(A1)+COLUMN(1:7)+ROW(1:6)*7-7

 

**Berhubung Rumus tsb adalah Array Formula Multi Masil (maka harus ditulis di BANYAK CELLS sekaligus, dan diakhiri dengan menekan tombol Ctrl + Shift, ENTER

**A1 harus berisi tgl 1  sembarang bulan sembarang tahun

 

Bentuk penayangan 'Daftar Tanggal Sebulan ' itu adalah bentuk kalender yg paling lazim karena hanya memerlukan penulisan satu set nama hari sebanyak satu kali saja.

 

Rumus tsb sebenarnya tidak perlu lagi dijelaskan  (mengapa kok tiba-tiba bisa membuat Grid Kalender Bulanan.) Tetapi agar posting ini tidak terlalu pendek, mari "kita" pura-pura menjelaskannya, dan anda pura-pura membacanya..


Problem Utama dlm membuat Grid Kalender Bulanan adalah…

bagaimana MENEMPATKAN TGL SATU = tepat pada Kolom Hari-nya.

(tidak perlu dijelaskan bahwa tgl 1 tiap bulan bisa jatuh pada hari apa saja bukan?)

Kita bisa saja memakai rumus yg panjang, tetapi kalau ada yg pendek dan ringan tentunya kita tinggalkan rumus yg kepanjangan tsb..

 

Sebetulnya yg diperlukan Bukan Tgl Satunya harus terletak di KOTAK /HARI APA ? Tetapi kita mencari HARI MINGGU terdekat yg 'sejajar dgn'  &/ 'di belakang' TGL SATU tsb.  Karena TANGGAL = HARI MINGGU, Maka dialah yg kita tempatkan pada KOTAK Hari Minggu !!  Ini lebih mudah karena hari minggu berada di kotak dengan nomor urutan yg sudah tertentu ( that is : 1 !!)

 

 =$H$29 - WEEKDAY($H$29) + 1

Formula ini mencari Hari Minggu paling dekat & SEBELUM Tgl SATU bulan aktif termasuk jika Tanggal Satu tsb = Hari Minggu !

Penjelasannya (seperti dulu pernah dijalaskan:) kira2 sbb

Suatu Tanggal jika  dikurangi (dimundurkan) dengan NILAI WEEKDAY-nya, PASTI adalah TANGGAL yg berada sejajar atau dibelakang-nya yg Jatuh pada Hari Sabtu

  =$H$26 - WEEKDAY($H$26)

Jadi… untuk menjadi Hari Minggu (spt yang diinginkan di dalam ceritak di atas) rumusnya adalah rumus bayi (rumus yg bayi pun tahu ?!) yaitu tinggal dimajukan  SATU HARI  (  ditambah 1.. Gitu loch…)

 

Kesimpulan dan Resep - nya

Untuk membuat Grid Kalender Bulanan yg bisa diubah-ubah Bulan Dan Tahunnya  (sehingga menjadi Kalender Abadi (tahun 1900 - 9999),  anda memerlukan:

 

1      Cell berisi Angka BULAN (bernilai 1 sd 12) yg mudah di-ubah-ubah   

2      Cell berisi Angka TAHUN, rentang nilainya terserah tetapi disarankan Angka               

        Tahun = 1900  sd 9999           

        ( sesuai rentang nilai tanggal yg dikenal oleh Excel ) 

               

3      Cell Berisi Tanggal 1 dengan bulan dan Tahun berasal dari dua cell di atas      

        Cell Tanggal 1 ini dapat anda isi RUMUS  = DATE( AngkaTahun, AngkaBulan, 1)            

        Keberadaannya bukan hanya sekedar 'numpang nampang' tetapi bertugas:               

        I       * Sebagai INFO kpd user bahwa Grid yg ada adalah Grid Kalender untuk Bulan

                dan Tahun yg ditampilkan oleh cell tsb.

                Makanya.. disarankan cell ini diformat agar tampil Tanggal dlm bentuk

                MMMM YY'   atau   'MMMM YYYY'

        II     * Sebagai Dasar Nilai yg akan dirujuk oleh RUMUS GRID KALENDER

               

4      Range berisi 7 Kolom X 7 Baris           

        a      1 Baris pertama akan diisi Nama-Nama Hari

        b     6 Baris berikutnya akan menjadi Grid Kalender  (7 kolom X 6 Baris)

                               

Grid 6 baris X 7 kolom itu dapat diisi dengan SATU RUMUS ARRAY                             

                   

Rumus jika hanya diperlukan 1 cel Hari Minggu ( <= Tgl 1 )                            

 =$H$30-WEEKDAY($H$30)+1       

                   

Jika Rumus hanya diperlukan di 1 Baris (minggu s/d sabtu)                            

 =$H$30-WEEKDAY($H$30)+COLUMN(1:7)      

bertugas menambah nilai 1 dan setiap rumus di tuliskan di kolom berikutnya Nilai                   

Penambah nilai ( ditambah + 1)  per kolomnya                 

                   

Jika Rumus jika diperlukan untuk Range 7 kolom X 6 Baris                             

  =$F$7-WEEKDAY($F$7)+COLUMN(1:7)+ROW(1:6)*7-7         

Dapat dilihat di sini bahwa : ROW(1:6) * 7  akan menambah nilai 7 setiap kali                           

rumus dituliskan di baris berikutnya                   

                               

PR untuk anda :

Buatlah Grid Kalender Bulanan spt di atas, tetapi Daftar Hari tersusun MENURUN dlm satu Kolom, dimulai HARI SENIN sbg FirstDay-nya


Nenhum comentário:

Arquivo do blog