• DİKKAT

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

İzin günü hesaplaması

Katılım
23 Şubat 2007
Mesajlar
1,212
Excel Vers. ve Dili
Excel2003
Değerli Dostlar Selamlar,
Bir izin hesabı hazırlamam lazım. Kriterleri şöyle:
İzin başlangıç tarihinden itibaren izin gün sayısını hesaplarken hafta tatili (kendimiz belirliyoruz haftada 1 gün) gününe gelince hafta tatili izne 1 gün eklenecek izin günü sonraki hafta tatillerine erişirse eriştiği tüm hafta tatilleri izne eklenecek.
Eğer izin 1 gün olursa Başlangıç bitiş tarihi aynı gün işe başlama bir sonraki gün olacak. (Örn: 01.01.2007 01.01.2007 02.01.2007)
İzin bitiş tarihinden sonraki yani işe başlayacağı gün hafta tatiline denk gelirse işbaşı tarihi bir gün sonraya sarkacak. (Örnek: 01.01.2007 10.01.2007 12.01.2007)
Özel günle ve Bayramlar yazılı listede izin tarihleri ile kesişen günler varsa aynen hafta tatilinin eklendiği mantıkla izne eklenecek. Ancak bayramlar hafta tatilinden önce eklenmeli. Şundan dolayı bayram eklemeleri yeniden hafta tatili eklemelerine sebebiyet verebilecektir.
 
Son düzenleme:
Merhabalar,
Benim düşündüğüm anlamda hesaplamanın mantığını açıklamaya örnek olması bakımından bir dosya hazırladım. Bayramlar da ayynı mantıkla dahil edilmeli.
 
Merhaba.
Bir kullanıcı tanımlı fonksiyon hazıladım..Belirlediğiniz bayram tatillerini de hesaplıyor hafta tatillerinide hsaplıyor.

Fonksiyonda hafta tatillerini ve bayram tatillerinde hata veriyordu.
Düzeltidi ve 4 nolu mesaja dosya eklendi.:cool:
 
Son düzenleme:
Merhaba.
Şimdi İngilizce versiyonlardada sorunsuz çalışacak.Yalnız D2 hücresine veri doğrulama ile aldığınız sayfa2 deki günlerin yelerini ve d2 hücresinin yerini değiştirmeyiniz.Umarım işinize yarar.
Ekli dosyayı inceleyiniz.:cool:
Fonksiyonda hata vardı düzeltildi dosya güncellendi.:cool:
I2 hücresine aşağıdaki kodu yazıp aşağı doğru çoğaltılacak.
=tatil(G2;$D$2;$E$2:$E$13)

Kod:
Function tatil(gun As Range, hafta_tatil As Range, resmi_tatil As Range)
Dim tarih As Date, tatil_tarih As Date, sonuc As Byte, rsm_tatil As Date
Dim tbl As Range, veri As Range
sonuc = 0: say = 0: tatil_tarih = Empty: hft_tatil = Empty
hft_tatil = hafta_tatil
tarih = gun
Set veri = Range(resmi_tatil.Address)
    For Each tbl In veri
            If tbl <> "" Then tatil_tarih = tbl
            If tarih = tatil_tarih Then
                say = 1
                Exit For
            End If
    Next
    If Application.Weekday(tarih, 2) = WorksheetFunction.Match(hft_tatil, Sheets("Sayfa2").Range("$A$1:$A$7"), 0) Then
        say = say + 1
    End If
If say = 0 Then
    sonuc = 1
    Else
    sonuc = 0
End If
tatil = sonuc
End Function
 
Son düzenleme:
Sayın Orion2 selamlar,
Cevabınız için teşekkür ederim. Ben konunun tamamını kod ile çözelim diye düşünmüştüm. Sağolun emek çekmişsiniz. Ancak kullanıcı tanımlı fonksiynların ikisinde de hafta tatillerini değiştirince hiç bir yenilenme değişme izleyemedim. Önceki hafta tatilinde olduğu gibi duruyor. Bir de 19 Mayısı değerlendirmeye almıyor. Bakabilirseniz.
 
Say&#305;n Orion2 selamlar,
Ancak kullan&#305;c&#305; tan&#305;ml&#305; fonksiynlar&#305;n ikisinde de hafta tatillerini de&#287;i&#351;tirince hi&#231; bir yenilenme de&#287;i&#351;me izleyemedim. &#214;nceki hafta tatilinde oldu&#287;u gibi duruyor. Bir de 19 May&#305;s&#305; de&#287;erlendirmeye alm&#305;yor. Bakabilirseniz.
Merhaba.
Say&#305;n kelkitli;
Gerekli d&#252;zeltmeler yap&#305;ld&#305;.
I2 h&#252;cresine a&#351;a&#287;&#305;daki kodu yaz&#305;p a&#351;a&#287;&#305; do&#287;ru &#231;o&#287;alt&#305;lacak.
=tatil(G2;$D$2;$E$2:$E$13)

Dosya g&#252;ncellendi,&#214;nceki mesaj&#305;mdamn indirip denyebilirsiniz.:cool:
 
Sayın Orion2 merhabalar,
Dosyayı aldım inceledim. Hesaplamalar hatasız. Emeğin için çok çok teşekkürler ederim. Sağol varol.
 
Değerli arkadaşlar selamlar,
Sayın Orion2 arkadaşımızın hazırladığı kullanıcı tanımlı fonksiyn hazırlanan dosyada sorunsuz çalışıyor. Ancak benim hazırladığım izin programına uyarlarkan hata oluşuyor. Bayram günlerini kopyala yapıştır yapmayınca hata veriyor. Bu başlıkta hazırlamaya çalıştığımız izin hesaplamasını bir kod ile hazırlama imkânı olan arkadaşlardan yardım rica ediyorum.
 
Değerli arkadaşlar selamlar,
Bu hesaplamayla ilgili hesaplamayı kullanıcı tanımlı fonksiyonla değilde kod ile çözme imkânı olan arkadaklarımızın katkılarını rica ediyorum.
 
Değerli Arkadaşlar selamlar,
Ben bu kullanıcı tanımlı fonksiyonu kendi formuma uyarlıyamadım. Yardımcı olursanız çok insanlığa geçer. Hazırladığım forum ektedir.
 
Değerli Dostlar Selamlar,
Sayın Orion2 arkadaşımızın hazırladığı kullanıcı tanımlı fonksiyondan faydalanarak hazırladığım İşçi İzin Formunu ekte bitmiş haliyle sundum. Orion2 ye teşekkürler.
İşine yarayacak arkadaşlar güle güle kullansın.
 
merhabalar, ekteki dosyalara tıkladığımda indirme penceresi açılmıyor, boş bir pencere açılıyor. Yardım edebilir misiniz? Sayfayı Internet Explorer 7 ile görüntülüyorum.
 
Firefox'la da denedim, 1x1 pixel boyutunda bir gif açılıyor, ekte herhangi bir rar dosaysı ya da excel dosyası yok sanırım. Yardım lütfen :(
 
Merhaba,
Bu sayfanın baş kısmındaki DUYURU SİSTEMİ başlığı altındaki kırmızı yazıya ve linke bakınız.

Yine de dosya elinde olan arkadaşımız varsa buraya ekleyebilir.

İyi çalışmalar.
 
Geri
Üst