• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

izin tahakkuku

Katılım
16 Ağustos 2008
Mesajlar
71
Excel Vers. ve Dili
Office 365
WİN 11 PRO
Merhabalar.
Ekteki dosyada personel için kıdemi ve mevcut yıldaki yaşı ile bağlantılı olmak üzere izin tahakkuku yapmak istiyorum.
Yardımlarınız için şimdiden teşekkürler.
 

Ekli dosyalar

Merhabalar.
Ekteki dosyada personel için kıdemi ve mevcut yıldaki yaşı ile bağlantılı olmak üzere izin tahakkuku yapmak istiyorum.
Yardımlarınız için şimdiden teşekkürler.


D4 hücresine bu formülü uygulayıp formülü aşağı ve sağa doğru sürükleyin
Kod:
=hakedis($B4;$C4;SAYIYAÇEVİR(METNEÇEVİR(METNEÇEVİR($B4;"gg.aa.")&D$3;"gg.aa.yyyy")))

Bir modül içinede aşağıdaki K.T.F kodunu koyun

Kod:

Kod:
Function hakedis(isegiristarihi, dogumtarihi, tarih)
If isegiristarihi = "" Then
hakedis = ""
Exit Function
ElseIf dogumtarihi = "" Then
hakedis = ""
Exit Function
End If

yer = Val((tarih - CDate(isegiristarihi)) * 1) + 1
'yer2 = Val((Val((dogumtarihi) * 1) / 365.25))
yer1 = Val(Val(((tarih - CDate(dogumtarihi)) * 1) + 1) / 365.25)
If yer >= 365.25 Then
tarih = Val((yer / 365.25))
Else
tarih = 0
End If

If isegiristarihi > 0 Then
If tarih <= 0 Then
hakedis = 0
ElseIf tarih >= 1 And tarih <= 5 Then
hakedis = 14
ElseIf tarih >= 6 And tarih <= 14 Then
hakedis = 20
ElseIf tarih >= 15 And tarih <= 65 Then
hakedis = 26
End If
If tarih > 0 Then
If hakedis <= 14 Then
If yer1 <= 18 Then
hakedis = 20
ElseIf yer1 >= 50 Then
hakedis = 20
End If
End If
End If
End If

End Function
 
Sayın Halit3,


İyi akşamlar.

Katkınız için teşekkürler.

Sevgi ve saygılar.
 
D4 hücresine bu formülü uygulayıp formülü aşağı ve sağa doğru sürükleyin
Kod:
=hakedis($B4;$C4;SAYIYAÇEVİR(METNEÇEVİR(METNEÇEVİR($B4;"gg.aa.")&D$3;"gg.aa.yyyy")))

Bir modül içinede aşağıdaki K.T.F kodunu koyun

Kod:

Kod:
Function hakedis(isegiristarihi, dogumtarihi, tarih)
If isegiristarihi = "" Then
hakedis = ""
Exit Function
ElseIf dogumtarihi = "" Then
hakedis = ""
Exit Function
End If

yer = Val((tarih - CDate(isegiristarihi)) * 1) + 1
'yer2 = Val((Val((dogumtarihi) * 1) / 365.25))
yer1 = Val(Val(((tarih - CDate(dogumtarihi)) * 1) + 1) / 365.25)
If yer >= 365.25 Then
tarih = Val((yer / 365.25))
Else
tarih = 0
End If

If isegiristarihi > 0 Then
If tarih <= 0 Then
hakedis = 0
ElseIf tarih >= 1 And tarih <= 5 Then
hakedis = 14
ElseIf tarih >= 6 And tarih <= 14 Then
hakedis = 20
ElseIf tarih >= 15 And tarih <= 65 Then
hakedis = 26
End If
If tarih > 0 Then
If hakedis <= 14 Then
If yer1 <= 18 Then
hakedis = 20
ElseIf yer1 >= 50 Then
hakedis = 20
End If
End If
End If
End If

End Function

Ellerinize sağlık.
Ancak tabloda 2012 yılında olduğumuz için 2012 yılı sonrasındaki izin tahakkuklarını göstermemesi gerekiyor.
Yada A1 hücresine bir tarih yazıp o tarihe göre sonuçları tabloya yansıtması için kodu veya formülü nasıl revize etmeliyiz.
 
Ellerinize sağlık.
Ancak tabloda 2012 yılında olduğumuz için 2012 yılı sonrasındaki izin tahakkuklarını göstermemesi gerekiyor.
Yada A1 hücresine bir tarih yazıp o tarihe göre sonuçları tabloya yansıtması için kodu veya formülü nasıl revize etmeliyiz.

A2 hücresine bugünün tarihini yazın
D4 hücresine aşağıdaki kodu yazın
Kod:
=hakedis($B4;$C4;SAYIYAÇEVİR(METNEÇEVİR(METNEÇEVİR($B4;"gg.aa.")&D$3;"gg.aa.yyyy"));$A$2)

K.T.F. kodunuda aşağıdaki kodla değiştirin.

Kod:
Function hakedis(isegiristarihi, dogumtarihi, zaman_aralıgı, gunun_tarihi)
If isegiristarihi = "" Then
hakedis = ""
Exit Function
ElseIf dogumtarihi = "" Then
hakedis = ""
Exit Function
End If
yer3 = CDate(zaman_aralıgı)
yer = Val((zaman_aralıgı - CDate(isegiristarihi)) * 1) + 1
'yer2 = Val((Val((dogumtarihi) * 1) / 365.25))
yer1 = Val(Val(((zaman_aralıgı - CDate(dogumtarihi)) * 1) + 1) / 365.25)
If yer >= 365.25 Then
zaman_aralıgı = Val((yer / 365.25))
Else
zaman_aralıgı = 0
End If

If gunun_tarihi > yer3 Then
If isegiristarihi > 0 Then
 
If zaman_aralıgı <= 0 Then
hakedis = 0
ElseIf zaman_aralıgı >= 1 And zaman_aralıgı <= 5 Then
hakedis = 14
ElseIf zaman_aralıgı >= 6 And zaman_aralıgı <= 14 Then
hakedis = 20
ElseIf zaman_aralıgı >= 15 And zaman_aralıgı <= 65 Then
hakedis = 26
End If
If zaman_aralıgı > 0 Then
If hakedis <= 14 Then
If yer1 <= 18 Then
hakedis = 20
ElseIf yer1 >= 50 Then
hakedis = 20
End If
End If
End If
End If
Else
hakedis = ""
End If

End Function
 
A2 hücresine bugünün tarihini yazın
D4 hücresine aşağıdaki kodu yazın
Kod:
=hakedis($B4;$C4;SAYIYAÇEVİR(METNEÇEVİR(METNEÇEVİR($B4;"gg.aa.")&D$3;"gg.aa.yyyy"));$A$2)

K.T.F. kodunuda aşağıdaki kodla değiştirin.

Kod:
Function hakedis(isegiristarihi, dogumtarihi, zaman_aralıgı, gunun_tarihi)
If isegiristarihi = "" Then
hakedis = ""
Exit Function
ElseIf dogumtarihi = "" Then
hakedis = ""
Exit Function
End If
yer3 = CDate(zaman_aralıgı)
yer = Val((zaman_aralıgı - CDate(isegiristarihi)) * 1) + 1
'yer2 = Val((Val((dogumtarihi) * 1) / 365.25))
yer1 = Val(Val(((zaman_aralıgı - CDate(dogumtarihi)) * 1) + 1) / 365.25)
If yer >= 365.25 Then
zaman_aralıgı = Val((yer / 365.25))
Else
zaman_aralıgı = 0
End If

If gunun_tarihi > yer3 Then
If isegiristarihi > 0 Then
 
If zaman_aralıgı <= 0 Then
hakedis = 0
ElseIf zaman_aralıgı >= 1 And zaman_aralıgı <= 5 Then
hakedis = 14
ElseIf zaman_aralıgı >= 6 And zaman_aralıgı <= 14 Then
hakedis = 20
ElseIf zaman_aralıgı >= 15 And zaman_aralıgı <= 65 Then
hakedis = 26
End If
If zaman_aralıgı > 0 Then
If hakedis <= 14 Then
If yer1 <= 18 Then
hakedis = 20
ElseIf yer1 >= 50 Then
hakedis = 20
End If
End If
End If
End If
Else
hakedis = ""
End If

End Function

Tek kelime ile harika.Ellerinize sağlık.Allah razı olsun.
 
Kodu birazcık sadeleştirdim.

D4 hücresinin formülü
Kod:
=
hakedis($B4;$C4;D$3;$A$2)

K.T.F. Kodu:

Kod:
'Function hakedis(isebaslamatarihi, dogumtarihi, calisilansure, tarih)
Function hakedis(isegiristarihi, dogumtarihi, kontrol_yili, gunun_tarihi)
If isegiristarihi = "" Then
hakedis = ""
Exit Function
ElseIf dogumtarihi = "" Then
hakedis = ""
Exit Function
ElseIf kontrol_yili = "" Then
hakedis = ""
Exit Function
ElseIf gunun_tarihi = "" Then
hakedis = ""
Exit Function
End If
zaman_aralıgı = CDate(Format(Format(isegiristarihi, "dd.mm.") & kontrol_yili, "dd.mm.yyyy"))
yer3 = CDate(zaman_aralıgı)
yer = Val((zaman_aralıgı - CDate(isegiristarihi)) * 1) + 1
yer1 = Val(Val(((zaman_aralıgı - CDate(dogumtarihi)) * 1) + 1) / 365.25)
If yer >= 365.25 Then
zaman_aralıgı = Val((yer / 365.25))
Else
zaman_aralıgı = 0
End If
If gunun_tarihi > yer3 Then
If isegiristarihi > 0 Then
If zaman_aralıgı <= 0 Then
hakedis = 0
ElseIf zaman_aralıgı >= 1 And zaman_aralıgı <= 5 Then
hakedis = 14
ElseIf zaman_aralıgı >= 6 And zaman_aralıgı <= 14 Then
hakedis = 20
ElseIf zaman_aralıgı >= 15 And zaman_aralıgı <= 65 Then
hakedis = 26
End If
If zaman_aralıgı > 0 Then
If hakedis <= 14 Then
If yer1 <= 18 Then
hakedis = 20
ElseIf yer1 >= 50 Then
hakedis = 20
End If
End If
End If
End If
Else
hakedis = ""
End If
End Function
 
Geri
Üst