• 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.

Soru Yıllık izin

nongeyikm

Yeni Üye
Kullanıcı Bilgileri
Katılım
22 Ara 2023
Mesajlar
11
Aldığı beğeni
1
Excel Versiyonu
Office 365 TR
Konuyu Başlatan
Merhabalar,

Aşağıdaki makroyu geçmiş yıllarda hazırlandı. Makroda bir sorun ile karşılaşmaktayım.

Örneğin; kişi 01.07.2010 yılında işe girdi ve 01.07.2015 yılı dahil her yıl için 14 gün izin hakediyor. bu kişi 10.07.2015 yılında 50 yaşına giriyor. aşağıdaki makro, izin hakediş tarih koşulunu yaştan önce tamamladığı için, izin hakediş gün sayısının 14 olarak kalması gerekirken makro 20 ye yükseltiyor.


Aynı hata durumu yıl geçişlerinde de geçerli.
0-5 yıl 14 gün
6-14 yıl 20 gün
15. yıldan itibaren 26 gün

Kısaca önce hangi koşul sağlanmış ise o yıl için diğer koşul sağlansa da gün sayısı değişmemeli.

Desteklerinizi rica ederim.



AppleScript:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
 
Merhaba Veri olmadığı için Kodlarda düzenleme yapmak ve çalıştırmak (deneme) imkanımız olmadığı için dosyanızı yükleyin.

If i >= 1 And i <= 5 Then
izinbul = 14
ElseIf i >= 6 And i <= 14 Then
izinbul = 20
ElseIf i >= 15 And i <= 65 Then
izinbul = 26
End If

If izinbul < 20 Then
If son1 + i <= 17 Or son1 + i > 49.9 Then
izinbul = 20
bu kısımlarda değişiklik yapıp deneyin
 
Merhaba Veri olmadığı için Kodlarda düzenleme yapmak ve çalıştırmak (deneme) imkanımız olmadığı için dosyanızı yükleyin.

If i >= 1 And i <= 5 Then
izinbul = 14
ElseIf i >= 6 And i <= 14 Then
izinbul = 20
ElseIf i >= 15 And i <= 65 Then
izinbul = 26
End If

If izinbul < 20 Then
If son1 + i <= 17 Or son1 + i > 49.9 Then
izinbul = 20
bu kısımlarda değişiklik yapıp deneyin
 

Ekli dosyalar

  • İzin Takip_Ornek.xlsm
    30.6 KB · Gösterim: 28
Sayın nongeyikm
Fonksiyonda neden döngüye girildiğini anlamış değilim.
Bu fonksiyonda nihayetinde son değişkeni = (i*izinbul) gibi görünüyor.
Döngüden çıkarak deneyin.
For satırının ve Next satırının başına kesme işareti
koyup öyle deneyin.
 
Deneyiniz.
 

Ekli dosyalar

  • İzin Takip_Ornek.xlsm
    31.8 KB · Gösterim: 2

Konuyu okuyanlar

Geri
Üst