ihbar günü hesaplayan makro hak.yardım.

Katılım
31 Mart 2005
Mesajlar
128
Excel Vers. ve Dili
Office XP - Türkçe
Function ihbarbul(sontar, bastar) As Integer

basyil = Year(bastar)
basay = Month(bastar)
basgun = Day(bastar)

sonyil = Year(sontar)
sonay = Month(sontar)
songun = Day(sontar)

If basgun > songun Then sonay = sonay - 1
If basay > sonay Then sonyil = sonyil - 1

farkyil = sonyil - basyil

ihbarbul = 0
If farkyil >= 0 And farkyil < 0.6 Then ihbarbul = 14
If farkyil >= 0.6 And farkyil < 1.8 Then ihbarbul = 28
If farkyil >= 1.8 And farkyil < 3 Then ihbarbul = 42
If farkyil >= 3 Then ihbarbul = 56
End Function


Değerli forumdaşlar yukarıdaki makroyu daha önce yıllık izinlerle ilgili yardımcı olan arkadaşların çalışmalarından kopyalayarak ihbar günü hesaplaması için kullanmak istedim çalışma oldu gibi derken
ihbargünü hesabında ay kesirlerini nasıl dikkate alacağımı bilemedim. yukarıdaki formül yıla göre işlem yapıyor .

ihbargünü hesabında aşağıdaki şekilde hesaplarsa sevinirim.

0 - 6 ay çalışanlar :14 gün
6 - 18 ay çalışanlar : 28 gün
18-36 ay çalışanlar : 42 gün
36 ay sonrası : 56 gün ihbar günü hakediyor.

dosya hakkında yardımlarınız bekler hayırlı işler dilerim.
saygılar...
 
Katılım
22 Mart 2005
Mesajlar
847
Excel Vers. ve Dili
Excel-2003 TR.
Altın Üyelik Bitiş Tarihi
29-06-2023
Merhaba;
Aşağıdaki fonksiyonu kullanabilirsin.


Function İhbar_süresi(Le As Integer)

If Le < 0 Then İhbar_süresi = "Sıfırdan Küçük Gün Olur mu?"
If Le >= 0 And a <= 182 Then İhbar_süresi = 14
If Le >= 183 And a <= 546 Then İhbar_süresi = 28
If Le >= 547 And a <= 1095 Then İhbar_süresi = 42
If Le >= 1096 And a <= 8900 Then İhbar_süresi = 56
If Le > 8900 Then İhbar_süresi = "İşe Giriş veya Çıkış Tarihleri Hatalı olabilir!!!"
End Function
 
Katılım
31 Mart 2005
Mesajlar
128
Excel Vers. ve Dili
Office XP - Türkçe
sayın leventer :hey: ,
formulü nasıl çalıştıracağım kısayolu nedir acaba ?
 
Katılım
14 Şubat 2006
Mesajlar
3,426
Excel Vers. ve Dili
(Excel 2016 - İngilizce)
Altın Üyelik Bitiş Tarihi
30-11-2022
Sayın fasuga,

Alternatif olarak aşağıdaki fonksiyonuda kullanabilirsin.

[vb:1:ed9d0cf38c]
Function İhbarGünü(ilktar, sontar As Date)
Dim gün As Variant
gün = sontar - ilktar
İhbarGünü = gün
Select Case gün
Case 0 To 180
İhbarGünü = 14
Case 181 To 540
İhbarGünü = 28
Case 541 To 1080
İhbarGünü = 42
Case 1081 To 99999
İhbarGünü = 56
End Select
End Function
[/vb:1:ed9d0cf38c]
 
Katılım
22 Mart 2005
Mesajlar
847
Excel Vers. ve Dili
Excel-2003 TR.
Altın Üyelik Bitiş Tarihi
29-06-2023
fasuga' Alıntı:
sayın leventer :hey: ,
formulü nasıl çalıştıracağım kısayolu nedir acaba ?

Merhaba;
Çalışma dosyanın içine alt+f11 yaptıktan sonra insert (Ekle) ile boş bir modül sayfası aç ve içine yapıştır.


Daha sonra örneğin İşe giriş tarihi a1 hücresinde ise Ayrılış tarihi b1 hücresindeyse c1 hücresine de =B1-A1 formülünü uygula ve ihbar gün sayısını hesaplatacağın hücreye de =İhbar_süresi(D1) formülünü yazdığında fonksiyon devreye girecektir.

Not: =ihbar_süresi( fonksiyonunu fx dende yapabilirsin.
 
Katılım
31 Mart 2005
Mesajlar
128
Excel Vers. ve Dili
Office XP - Türkçe
leventer ve ripek,
yapmış olduğunuz değerli katkılarınız için teşekkür eder çalışmalarınızda başarılar dilerim.
saygılarımla,,, :mutlu: :mutlu: :mutlu: :mutlu:
 
Katılım
22 Mart 2005
Mesajlar
847
Excel Vers. ve Dili
Excel-2003 TR.
Altın Üyelik Bitiş Tarihi
29-06-2023
Yardımcı olabildikse ne mutlu bize.

:icelim:
 
Üst