Friday, May 18, 2007

XL di HrD


Microsoft XL pasti sudah tidak asing lagi di berbagai perkantoran saat ini, bahkan dalam reqruitment karyawan / pegawai baru, bisa mengoperasikan XL adalah salah satu persyaratan minimal saat ini.


Bagi rekan2 dunia maya saya di xl-mania bisa jadi yang saya sampaikan dibawah ini hanya bagian amat kecil saja dari berbagai kemampuan didunia xl. Tapi bagi yg baru memulai masuk kedunia kerja xl mungkin saja ada manfaatnya.



Kalau saja HRD tidak mengalami kekosongan tentu saya gak perlu buka2 file penggajian disana dan mugnkin gak akan ide masuk di blogku ini ( karena sudah cukup lama bosan isi blog karena gak ada ide ).

Gaji untuk pekerja harian biasanya kan dibayar mingguan, dan absensinya biasa dimulai dari hari Senen - Sabtu ( 6 hari kerja ). Disana ternyata ada bbrp kreteria misal : ada yang sakit "CS" ada cuti tahunan "C" adan hari libur nasional "L" yang tetap dibayar penuh pastinya, ada pula yg masuk 1/2 hari yg dibayar hanya 1/2 upah hariannya.

Nah, kalau total hari masuk kerja di sum() pakai pilihan IF() maka betapa panjangnya rumus itu untuk 6 hari kerja. Saya coba mencari rumus yg lebih sederhana maka ditemukannlah rumus sbb :

=SUM(D11:I11)+COUNTIF(D11:I11;"CS")+COUNTIF(D11:I11;"C")+COUNTIF(D11:I11;"CK")+COUNTIF(D11:I11;"L")

Rumus yang cukup singkat juga ada di insentif. Insentif dibayarkan kalau karyawan masuk penuh 1 hari misalkan Rp 1000/hari, sedangkan kalau hanya masuk 1/2 hari tidak diberi insentif. Rusmus paling pendek aku rasa dengan metode array yakni rumus dibawah ini :

=SUM(IF(D11:I11<1;0;d11:i11))*1000

ditulis di range insentif yang dimaksud, kemudian sebelum lakukan enter -> tekan dulu bersama-sama "Ctrl" dan "Shift" dan "Enter" tentu saja. Setelah dilakukan enter maka rumus diatas akan berada dalam kurung seperti ini :

{=SUM(IF(D11:I11<1;0;d11:i11))*1000}

Selain dari itu ada juga ketentuan tertentu yang mungkin agak susah dibuat rumus, maka bisa dibuat dengan membuat Function khusus dalam sebuah macro, misal seperti dibawah ini

Function jumlah(kol1, kol2, kol3, kol4, kol5, kol6)
' by HK, 16/05/2007

If kol1 = "R" Or kol1 = "C" Then
kol1 = 1
End If
If kol1 < kol1 = "L">
kol1 = 0
End If

If kol2 = "R" Or kol2 = "C" Then

kol2 = 1
End If
If kol2 < kol2 = "L">
kol2 = 0
End If

' dst sampai kol6

jumlah = kol1 + kol2 + kol3 + kol4 + kol5 + kol6

End Function

kemudian kalo macro ini sudah ditulis di VBA tentunya, maka berarti kita telah mempunyai Function baru yang diberi nama "jumlah" yang memerlukan variable kol1, kol2 sd kol6 yang natinya akan menunjuk pada kolom hari "senin" "selasa" dst. Adapun cara penjumlahan di kolom jumlah hari ditulis seperti membuat rumus sum() dll. Seperti tsb dibawah ini :

misal D105=5; E105=5; F105=5; G105=5; H105=5; I105=5

=jumlah(D105;E105;F105;G105;H105;I105)
hasil jumlahnya = 30

Ini baru sebagian kecil dari sekian buanyyak metode yang bisa dilakukan dengan XL, lebih lengkap lagi ada di millist xl-mania.

sayangnya rumus2 diatas tidak bisa dipraktekan langsung di-blog ini. Silahkan kirim e-mail ke saya jika ada yang mau bertanya ( tentu akan saya jawab sebisa-bisa saya aja ).