• Foruma hoş geldin 👋 Ziyaretçi

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Çözüldü Yıllık izin yaş hesaplama sorunu

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

xmenx

Yeni Üye
Kullanıcı Bilgileri
Aktiflik
Çevrimdışı
Katılım
25 Eki 2022
Mesajlar
303
Aldığı beğeni
45
Excel V
Office 2016 TR
Konuyu Başlatan
Merhaba üstadlar ekteki dosya da personel 3 işe giriş tarihi 25.02.2019 ve doğum tarihi 13.04.1972 olan personelin yıllık izin hakedişlerin hepsine 20 yazıyor güncel yıla göre bakıyor 2020 48 yaşında olur ve yıllık izin hakedişi 14 olması gerekiyor diğer yıllarında hangi yılda 50 yaşına girdiyse ondan sonra 20 yazması gerkeiyor. Yardımlarınız için teşekkür ederim şimdiden
 

Ekli dosyalar

  • ÖRNEKİZİN.xlsm
    97.9 KB · Gösterim: 23
Sayın excelcan hocam buyrun alttaki gibi kurallar. Buna göre olucak ama dediğim gibi biryıldan 5 yıla kadar 14 gün gibi kurallar çalışıyor sadece yaş kuralı çalışmıyor başka sıkıntı yok
Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
b(say, 10) = Evaluate("=DATEDIF(" & CLng(a(i, 9)) & "," & CLng(bg) & ",""Y"")")

'burada yaş hesaplamışsınız. 10 sütuna yazılacağı için kalacak.
'Aşağıda bu yaş değişkenini kullanmışsınız. Sabit. O yüzden hata alıyorsunuz.
'sayi1 değişkenini b(say, 10) a eşitlemişsiniz.
'Oysa 1995 den 20024 e geldikce her tarihte yaşı yeniden hesaplamanız gerekiyor.
'Bu noktayı atlamışsınız. 1972 doğumlu personel 1995 de 23 yaşında olur. 2010 da 38 yaşında olur. vs.
'Aynı zamanda işe giriş tarihi de dikkate alınacak. 2019 dan önce işe giren bir personel için
'1995-2018 arası tarihlerde çalışma zamanı hep eksi değer verir. Dolayısıyla bu aralıkta yaş değişkeninin de bir önemi yok.
'O zaman her bir sütunda o sütundaki tarihe göre oluşan yaşa göre ve çalışma zamanına göre değerlendirme olmalı.

sayi1 değişkenini aşağıdaki gibi düzeltirseniz sıkıntı kalmaz.
sayi1 = DateDiff("YYYY", CDate(a(i, 9)), CDate(trh))
 
Çözüm
Hocam allah razı olsun düzeldi şimdi inanın kaç gündür bakıyorum çözemedim.
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst