Çözüldü Yan Ödeme Kodu

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,518
Excel Vers. ve Dili
2021 LTSC TR
Altın Üyelik Bitiş Tarihi
18-06-2026
Kod:
Function YanÖdeme(ünvan)
If ünvan = "Müdür" Then
YanÖdeme = 1175
ElseIf ünvan = "Müdür Yardımcısı" Then
YanÖdeme = 1150
ElseIf ünvan = "Müdür Yetkili Öğretmen" Then
YanÖdeme = 750
ElseIf ünvan = "Öğretmen" Then
YanÖdeme = 750
ElseIf ünvan = "Şef" Then
YanÖdeme = 700
ElseIf ünvan = "Memur" Then
YanÖdeme = 500
ElseIf ünvan = "Veri Hazırlama ve Kontrol İşletmeni" Then
YanÖdeme = 2250
ElseIf ünvan = "Bilgisayar İşletmeni" Then
YanÖdeme = 2250
ElseIf ünvan = "Teknisyen" Then
YanÖdeme = 1050
ElseIf ünvan = "Sayman" Then
YanÖdeme = 1200
ElseIf ünvan = "Hizmetli" Then
YanÖdeme = 1500
ElseIf ünvan = "Özel Sınıf Müdür" Then
YanÖdeme = 1425
ElseIf ünvan = "Özel Sınıf Müdür Yard." Then
YanÖdeme = 1400
ElseIf ünvan = "Özel Sınıf Öğretmen" Then
YanÖdeme = 1100
ElseIf ünvan = "An.Li.Müd." Then
YanÖdeme = 1675
ElseIf ünvan = "An.Li.Md.Yrd." Then
YanÖdeme = 1650
ElseIf ünvan = "An.Li.İng.Öğ." Then
YanÖdeme = 1250
ElseIf ünvan = "Asker Öğretmen" Then
YanÖdeme = 10800
End If

End If
End Function
Es Selamün Aleyküm
Yukarıda yazan kullanıcı tanımlı kodu =YanÖdeme(B11) olarak kullanmak istediğimde #AD? hatası veriyor. Neden olabilir acaba yardımcı olabilir misiniz?
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.
Aşağıdaki gibi deneyin.
Rich (BB code):
Function YanOdeme(unvan As Range)
Select Case unvan
    Case "Müdür": YanOdeme = 1175
    Case "Müdür Yardımcısı": YanOdeme = 1150
    Case "Müdür Yetkili Öğretmen": YanOdeme = 750
    Case "Öğretmen": YanOdeme = 750
    Case "Şef": YanOdeme = 700
    Case "Memur": YanOdeme = 500
    Case "Veri Hazırlama ve Kontrol İşletmeni": YanOdeme = 2250
    Case "Bilgisayar İşletmeni": YanOdeme = 2250
    Case "Teknisyen": YanOdeme = 1050
    Case "Sayman": YanOdeme = 1200
    Case "Hizmetli": YanOdeme = 1500
    Case "Özel Sınıf Müdür": YanOdeme = 1425
    Case "Özel Sınıf Müdür Yard.": YanOdeme = 1400
    Case "Özel Sınıf Öğretmen": YanOdeme = 1100
    Case "An.Li.Müd.": YanOdeme = 1675
    Case "An.Li.Md.Yrd.": YanOdeme = 1650
    Case "An.Li.İng.Öğ.": YanOdeme = 1250
    Case "Asker Öğretmen": YanOdeme = 10800
    Case Else: YanOdeme = "YOK"
End Select
End Function
 
Son düzenleme:

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,745
Excel Vers. ve Dili
2010-2016
Sondaki end if fazlalık.
Aşağıdaki şekilde eklerseniz olmayan bir unvan için de uyarı verir.
Kod:
Function YanÖdeme(ünvan)
    If ünvan = "Müdür" Then
    YanÖdeme = 1175
    ElseIf ünvan = "Müdür Yardımcısı" Then
    YanÖdeme = 1150
    ElseIf ünvan = "Müdür Yetkili Öğretmen" Then
    YanÖdeme = 750
    ElseIf ünvan = "Öğretmen" Then
    YanÖdeme = 750
    ElseIf ünvan = "Şef" Then
    YanÖdeme = 700
    ElseIf ünvan = "Memur" Then
    YanÖdeme = 500
    ElseIf ünvan = "Veri Hazırlama ve Kontrol İşletmeni" Then
    YanÖdeme = 2250
    ElseIf ünvan = "Bilgisayar İşletmeni" Then
    YanÖdeme = 2250
    ElseIf ünvan = "Teknisyen" Then
    YanÖdeme = 1050
    ElseIf ünvan = "Sayman" Then
    YanÖdeme = 1200
    ElseIf ünvan = "Hizmetli" Then
    YanÖdeme = 1500
    ElseIf ünvan = "Özel Sınıf Müdür" Then
    YanÖdeme = 1425
    ElseIf ünvan = "Özel Sınıf Müdür Yard." Then
    YanÖdeme = 1400
    ElseIf ünvan = "Özel Sınıf Öğretmen" Then
    YanÖdeme = 1100
    ElseIf ünvan = "An.Li.Müd." Then
    YanÖdeme = 1675
    ElseIf ünvan = "An.Li.Md.Yrd." Then
    YanÖdeme = 1650
    ElseIf ünvan = "An.Li.İng.Öğ." Then
    YanÖdeme = 1250
    ElseIf ünvan = "Asker Öğretmen" Then
    YanÖdeme = 10800
    Else
        YanÖdeme = "Unvan Yok"
    End If
    
End Function
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Ben de hücrenin aranan kriterlerden birine uymaması haline ilişkin bir satır ekleyerek önceki cevabımı güncelledim.
Fonksiyonun =YanOdeme(A1) gibi kullanılması gerektiğini de hatırlatmakta yarar var sanırım.
.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Tekrar merhaba.
2 numaralı cevapta KTF ile ilgili öneride bulunmuştum.

Formül ile çözüm önerisinde de bulunayım dedim.
-- Birinci formül, unvanların ve karışılık gelen sayısal değerlerin formül içerisinde yazıldığı seçenek.
-- İkinci formül ise verilerin başka bir alana listelenmesi ve bu alanlar için unvan ve yano şeklinde AD TANIMLAMASI yapılarak kullanılacak seçenek.
Rich (BB code):
=EĞERHATA(ARA(A2;{"An.Li.İng.Öğ.";"An.Li.İng.Öğ.";"An.Li.Md.Yrd.";"An.Li.Müd.";"Asker Öğretmen";"Bilgisayar İşletmeni";"Hizmetli";"Memur";"Müdür";"Müdür Yardımcısı";"Müdür Yetkili Öğretmen";"Öğretmen";"Özel Sınıf Müdür";"Özel Sınıf Müdür Yard.";"Özel Sınıf Öğretmen";"Sayman";"Şef";"Teknisyen";"Veri Hazırlama ve Kontrol İşletmeni"};{1250;1250;1650;1675;10800;2250;1500;500;1175;1150;750;750;1425;1400;1100;1200;700;1050;2250});"YOK")
=EĞERHATA(ARA(A2;unvan;yano);"YOK")
 

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,518
Excel Vers. ve Dili
2021 LTSC TR
Altın Üyelik Bitiş Tarihi
18-06-2026
Ömer BARAN
askm

sonsuz teşekkür eder, saygılarımı sunarım.
 
Üst