Kod:
Function izin$(giris, dtarih)
b = Month(giris) ' giriş tarihinin ayı
c = Month(Now) ' şimdiki zamanın ayı
m = Month(dtarih) ' doğum tarihinin ayı
simdi = Year(Now) ' bulunduğumuz zamana ait yıl değeri
izinyas = Year(giris) + 1 ' izin kullanma yılı
' Kıdem Yılı Hesaplama
a = DateDiff("yyyy", giris, Now) ' giris tarihi ile şimdiki zaman farkı
If b > c Then
kidem = a - 1 'doğum ayı şu anki aydan küçük ise 1 azalt
Else
kidem = a
End If
'İşçinin işe girdiğindeki yaşı
k = DateDiff("yyyy", dtarih, giris) ' giris tairihi ile doğum tarihindeki fark
If b < m Then
yas = k - 1
Else
yas = k
End If
' işe başlamada 49 yaşında olan kişi izin hakettiğinde 50 yaşında olacağından 49 çıkartma yapılarak hesaplandı
limit = 49 - yas ' 50 yılı tamamlama için limit heseplama
'50 yaşından önce giren kidem yılı ilk 5 yılında 50 yaşına girenler için fark hesaplama
If limit > 0 And limit < 4 Then
fark = 5 - limit
Else
fark = 0
End If
If kidem < 6 Then
If yas > 49 Then
sonuc = kidem * 20
Else
sonuc = kidem * 14 + fark * 6
End If
ElseIf kidem > 5 And kidem < 15 Then
If yas > 49 Then
sonuc = kidem * 20
Else
sonuc = (kidem * 14) + fark * 6 + (kidem - 5) * 6
End If
Else
If yas > 49 Then
sonuc = kidem * 20 + (kidem - 14) * 6
Else
sonuc = (kidem * 14) + fark * 6 + (kidem - 5) * 6 + (kidem - 14) * 6
End If
End If
izin$ = sonuc
End Function