[Yardım]  Yıllık İzinlerde Kıdem Artışının Hesaplanması

Excel sayfalarında kullandığımız yerleşik fonksiyonlar ya da kendi yazabileceğiniz fonksiyonlar ile ilgili bilmek istedikleriniz, sorunlar ve çözümleri

Yıllık İzinlerde Kıdem Artışının Hesaplanması

İleti#1)  EKREM » 17 Şub 2018 20:06

Değerli arkadaşlar..! İsteyeceğim yardım konusu sitede bir hayli işlenmiş, ya ben bulamadıeya uyarlayamadım
İşlevi KTF ile mi, yoksa yerleşik fonksiyon ile mi çözülebileceğini de tam kestiremedim. Şöyleki;
Örneğin;
A1 hücresinde göreve başlama tarihi yazılı..
B1 hücresinde ise, şöyle bir formül olmalı:

A1 hücresindeki göreve başlama tarihi üzerine (gününe kadar) 10 sene sayacak ve neticede,
B1 hücresindedeki sonuç:
10 seneye kadar 20
10 sene yukarısı için 30 yazacak/hesaplayacak..

Yani,
01.02.2010 tarihinde işe giriş..(10 yıl boyunca, yıllık izin hakkı 20 gün)
01.02.2020 tarihinden sonra.... (10 yıl dolunca, yıllık izin hakkı 30 güne çıkacak)

Böyle bir senaryoya fonksiyon uyarlayabilir miyiz.?
Kullanıcı avatarı
EKREM
Siteye Alışmış
 
Adı Soyadı:Ekrem Baltacıoğlu
Kayıt: 26 Oca 2011 12:24
Konum: --
Meslek: Kamu
Yaş: 56
İleti: 164
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bursa / Mustafakemalpaşa

Cevap: Yıllık İzinlerde Kıdem Artışının Hesaplanması

İleti#2)  hemso41 » 17 Şub 2018 22:02

KTF işinizi görür.
Kod: Tümünü seç
Function izin(bas_tarihi As Date) As Long
    If IsEmpty(bas_tarihi) Then
        izin = "Göreve Başlama Tarihi Giriniz"
    Else
        If DateDiff("yyyy", Format(bas_tarihi, "dd.mm.yyyy"), Format(Date, "dd.mm.yyyy")) < 10 Then
            izin = 20
        ElseIf DateDiff("yyyy", Format(bas_tarihi, "dd.mm.yyyy"), Format(Date, "dd.mm.yyyy")) >= 10 Then
            izin = 30
        End If
    End If
End Function
Kullanıcı avatarı
hemso41
Siteye Alışmış
 
Kayıt: 22 Eyl 2015 10:04
Meslek: BİLGİ İŞLEM
Yaş: 38
İleti: 330
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: izmir/karşıyaka

Cevap: Yıllık İzinlerde Kıdem Artışının Hesaplanması

İleti#3)  EKREM » 17 Şub 2018 22:26

Sn. hemso41 çok teşekkür ediyorum.. Çok makbule geçti..Elinize sağlık..
Kullanıcı avatarı
EKREM
Siteye Alışmış
 
Adı Soyadı:Ekrem Baltacıoğlu
Kayıt: 26 Oca 2011 12:24
Konum: --
Meslek: Kamu
Yaş: 56
İleti: 164
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bursa / Mustafakemalpaşa

Cevap: Yıllık İzinlerde Kıdem Artışının Hesaplanması

İleti#4)  EKREM » 18 Şub 2018 16:55

Sn. hemso41 dönüş yapmak zorunda kaldım. Bir ilave yapmak istedim olmadı, (göreve başlama tarihinin girildiği hücre) boş ise karşılığındaki formül sonucu da boş olsun, ilavesini nasıl yaparız.?
Kullanıcı avatarı
EKREM
Siteye Alışmış
 
Adı Soyadı:Ekrem Baltacıoğlu
Kayıt: 26 Oca 2011 12:24
Konum: --
Meslek: Kamu
Yaş: 56
İleti: 164
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bursa / Mustafakemalpaşa

REKLAM
Excel Logo XML Oluşturucu
Logo Object Designer ile Uyarlama

Cevap: Yıllık İzinlerde Kıdem Artışının Hesaplanması

İleti#5)  hemso41 » 19 Şub 2018 18:21

Kod: Tümünü seç
Function izin(bas_tarihi As Date) As Long
    If IsEmpty(bas_tarihi) Then
        izin = ""
    Else
        If DateDiff("yyyy", Format(bas_tarihi, "dd.mm.yyyy"), Format(Date, "dd.mm.yyyy")) < 10 Then
            izin = 20
        ElseIf DateDiff("yyyy", Format(bas_tarihi, "dd.mm.yyyy"), Format(Date, "dd.mm.yyyy")) >= 10 Then
            izin = 30
        End If
    End If
End Function
Kullanıcı avatarı
hemso41
Siteye Alışmış
 
Kayıt: 22 Eyl 2015 10:04
Meslek: BİLGİ İŞLEM
Yaş: 38
İleti: 330
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: izmir/karşıyaka

Cevap: Yıllık İzinlerde Kıdem Artışının Hesaplanması

İleti#6)  EKREM » 19 Şub 2018 18:41

Değerli hocam, (tarih girilmemiş hücrelerin) sonucunu 30 veriyor, boş veya sıfır olarak vermiyor, acaba ben mi uyarlayamadım..
Kullanıcı avatarı
EKREM
Siteye Alışmış
 
Adı Soyadı:Ekrem Baltacıoğlu
Kayıt: 26 Oca 2011 12:24
Konum: --
Meslek: Kamu
Yaş: 56
İleti: 164
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bursa / Mustafakemalpaşa

REKLAM
ETA - Excel Konsolide Raporlama
ETA Excel Personel Entegre Raporu

Cevap: Yıllık İzinlerde Kıdem Artışının Hesaplanması

İleti#7)  Erkan Akayay » 19 Şub 2018 23:41

1. Tarih boşşa işlemi yapıp function exit ile sonlanmalı.
2. izin(bas_tarihi As Date) As Long olarak yani sayısal değer tanımlanmış. Sayısal değer olarak dönen bir sonuçta "" sonucu döndüremezsiniz. #DEĞER hatası verir.

Kod: Tümünü seç
Function izin(bas_tarihi As Range)
If IsEmpty(bas_tarihi) Then izin = "": Exit Function
    Select Case DateDiff("yyyy", Format(bas_tarihi, "dd.mm.yyyy"), Format(Date, "dd.mm.yyyy"))
        Case Is < 10: izin = 20
        Case Is >= 10: izin = 30
    End Select
End Function
Kullanıcı avatarı
Erkan Akayay
Site Dostu
 
Kayıt: 20 Ağu 2008 13:59
Konum: YALOVA
Meslek: Bilgi İşlem
Yaş: 48
İleti: 3906
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ümraniye

Cevap: Yıllık İzinlerde Kıdem Artışının Hesaplanması

İleti#8)  hemso41 » 20 Şub 2018 00:09

Denemeden yazmışım aynen. Teşekkürler.
Kullanıcı avatarı
hemso41
Siteye Alışmış
 
Kayıt: 22 Eyl 2015 10:04
Meslek: BİLGİ İŞLEM
Yaş: 38
İleti: 330
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: izmir/karşıyaka

Cevap: Yıllık İzinlerde Kıdem Artışının Hesaplanması

İleti#9)  EKREM » 21 Şub 2018 01:56

Yukarıda verilen ilk 1.nci KTF fonksiyonu, Eğer fonksiyonu ile birlikte =EĞER(C70="";0;izin(C70)) kullanınca,
ancak istenilen sonucu verdi gibi.. Başka türlü olmuyor.. Artık bu şekil kullanacağız..
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
Kullanıcı avatarı
EKREM
Siteye Alışmış
 
Adı Soyadı:Ekrem Baltacıoğlu
Kayıt: 26 Oca 2011 12:24
Konum: --
Meslek: Kamu
Yaş: 56
İleti: 164
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bursa / Mustafakemalpaşa


Forum Kullanıcı Tanımlı Fonksiyonlar ( KTF )

Online Kullanıcılar

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 1 misafir

Bumerang - Yazarkafe