Yatay Geçişlerde İçin 4 Lük sistemden Not Çevirme

yenilik025

Altın Üye
Katılım
28 Eylül 2005
Mesajlar
233
Excel Vers. ve Dili
2007
Altın Üyelik Bitiş Tarihi
23-06-2027
Yatay Geçişler İçin 4 Lük sistemden Not Çevirme manuel olarak yapılmaktadır.

Halbuki bu iş için bir fonksiyonla daha kolay yapılamaz mı ?

Bunun fonksiyon için yardımınıza ihtiyacımız var.
 

Ekli dosyalar

Katılım
3 Aralık 2014
Mesajlar
213
Excel Vers. ve Dili
Microsoft Excel 2007
Merhaba ; Eğer 4=100 ; 3=75 olması gerekmez mi ? Sizin dosyanızda 3=84 oluyor. Hesaplama sistemi neye göre işliyor ?
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Orda zaten DÜŞEYARA fonksiyonuyla önceden belirlenmiş dönüşümlerden sonuç alınıyor. Siz başka nasıl bir çözüm istiyorsunuz?
 

yenilik025

Altın Üye
Katılım
28 Eylül 2005
Mesajlar
233
Excel Vers. ve Dili
2007
Altın Üyelik Bitiş Tarihi
23-06-2027

yenilik025

Altın Üye
Katılım
28 Eylül 2005
Mesajlar
233
Excel Vers. ve Dili
2007
Altın Üyelik Bitiş Tarihi
23-06-2027
Orda zaten DÜŞEYARA fonksiyonuyla önceden belirlenmiş dönüşümlerden sonuç alınıyor. Siz başka nasıl bir çözüm istiyorsunuz?
Sağolun ilginiz için teşekkür ediyorum benim istediğim belli bir aralığa takılmamak.

bir fonksiyon olarak hazırlanmadır.

örnek =NÇEVİR(E5)

gibi.
 

Ekli dosyalar

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Siz tam olarak ne yapmak istiyorsunuz? Dosyanızda mevcut A ve B sütunlarındaki tablo olmadan herhangi bir hücreye 4'lük notu yazdığınızda başka hücrede bir formülle yüzlük karşılığını mı görmek istiyorsunuz? Eğer öyleyse bu dönüşümün şartı nedir? Yani NÇEVİR diye belirttiğiniz formül nasıl bir işlem yapıp da dönüşümü sağlıyor? Dönüşümün kuralı nedir? Eğer o kuralı bilmezsek dönüşümü yaptıramayız doğal olarak.
 

yenilik025

Altın Üye
Katılım
28 Eylül 2005
Mesajlar
233
Excel Vers. ve Dili
2007
Altın Üyelik Bitiş Tarihi
23-06-2027
siz tam olarak ne yapmak istiyorsunuz?
Dosyanızda mevcut a ve b sütunlarındaki tablo olmadan herhangi bir hücreye 4'lük notu yazdığınızda başka hücrede bir formülle yüzlük karşılığını mı görmek istiyorsunuz?

1-bu evet hocam.

Eğer öyleyse bu dönüşümün şartı nedir?

2-sayfamdaki düşeyara mantığının karşısındaki notlar.


Yani nçevir diye belirttiğiniz formül nasıl bir işlem yapıp da dönüşümü sağlıyor? Dönüşümün kuralı nedir?

3-sayıyı girdiğimizde bu listeden karşılığını bulup getirecek.

Eğer o kuralı bilmezsek dönüşümü yaptıramayız doğal olarak.

(hocam eskiden tl ye çevir mantığı ile yazılıyordu.ve bunu eklenti olarak ekleyip fonksiyon ataması yapılıyordu.)

burda da durum bu

girilen not tablomda belirtttiğim değeri varsa karşılığını getirecek düşey ara örneğinde olduğu gibi, yoksa bu sayı sıfır getirecek .

Bu kadar.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Siz özel formül oluşturulmasını istiyorsunuz. Maalesef beni aşıyor.

Eğer ilgilenen olursa ARA formülünün kod karşılığı aşağıdaki şekilde oluştu:
Kod:
ActiveCell.FormulaR1C1 = _
        "=LOOKUP(R[4]C[2],{1.5;1.51;1.52;1.53;1.54;1.55;1.56;1.57;1.58;1.59;1.6;1.61;1.62;1.63;1.64;1.65;1.66;1.67;1.68;1.69;1.7;1.71;1.72;1.73;1.74;1.75;1.76;1.77;1.78;1.79;1.8;1.81;1.82;1.83;1.84;1.85;1.86;1.87;1.88;1.89;1.9;1.91;1.92;1.93;1.94;1.95;1.96;1.97;1.98;1.99;2;2.01;2.02;2.03;2.04;2.05;2.06;2.07;2.08;2.09;2.1;2.11;2.12;2.13;2.14;2.15;2.16;2.17;2.18;2.19;2.2;2.21;" & _
        "2.22;2.23;2.24;2.25;2.26;2.27;2.28;2.29;2.3;2.31;2.32;2.33;2.34;2.35;2.36;2.37;2.38;2.39;2.4;2.41;2.42;2.43;2.44;2.45;2.46;2.47;2.48;2.49;2.5;2.51;2.52;2.53;2.54;2.55;2.56;2.57;2.58;2.59;2.6;2.61;2.62;2.63;2.64;2.65;2.66;2.67;2.68;2.69;2.7;2.71;2.72;2.73;2.74;2.75;2.76;2.77;2.78;2.79;2.8;2.81;2.82;2.83;2.84;2.85;2.86;2.87;2.88;2.89;2.9;2.91;2.92;2.93;2.94;2.95;2.96;" & _
        "2.97;2.98;2.99;3;3.01;3.02;3.03;3.04;3.05;3.06;3.07;3.08;3.09;3.1;3.11;3.12;3.13;3.14;3.15;3.16;3.17;3.18;3.19;3.2;3.21;3.22;3.23;3.24;3.25;3.26;3.27;3.28;3.29;3.3;3.31;3.32;3.33;3.34;3.35;3.36;3.37;3.38;3.39;3.4;3.41;3.42;3.43;3.44;3.45;3.46;3.47;3.48;3.49;3.5;3.51;3.52;3.53;3.54;3.55;3.56;3.57;3.58;3.59;3.6;3.61;3.62;3.63;3.64;3.65;3.66;3.67;3.68;3.69;3.7;3.71;3.7" & _
        "2;3.73;3.74;3.75;3.76;3.77;3.78;3.79;3.8;3.81;3.82;3.83;3.84;3.85;3.86;3.87;3.88;3.89;3.9;3.91;3.92;3.93;3.94;3.95;3.96;3.97;3.98;3.99;4},{59;59.2;59.4;59.6;59.8;60;60.2;60.4;60.6;60.8;61;61.2;61.4;61.6;61.8;62;62.2;62.4;62.6;62.8;63;63.2;63.4;63.6;63.8;64;64.2;64.4;64.6;64.8;65;65.2;65.4;65.6;65.8;66;66.2;66.4;66.6;66.8;67;67.2;67.4;67.6;67.8;68;68.2;68.4;68.6;68.8" & _
        ";69;69.1;69.2;69.3;69.4;69.5;69.6;69.7;69.8;69.9;70;70.1;70.2;70.3;70.4;70.5;70.6;70.7;70.8;70.9;71;71.1;71.2;71.3;71.4;71.5;71.6;71.7;71.8;71.9;72;72.1;72.2;72.3;72.4;72.5;72.6;72.7;72.8;72.9;73;73.1;73.2;73.3;73.4;73.5;73.6;73.7;73.8;73.9;74;74.2;74.4;74.6;74.8;75;75.2;75.4;75.6;75.8;76;76.2;76.4;76.6;76.8;77;77.2;77.4;77.6;77.8;78;78.2;78.4;78.6;78.8;79;79.2;79.4" & _
        ";79.6;79.8;80;80.2;80.4;80.6;80.8;81;81.2;81.4;81.6;81.8;82;82.2;82.4;82.6;82.8;83;83.2;83.4;83.6;83.8;84;84.1;84.2;84.3;84.4;84.5;84.6;84.7;84.8;84.9;85;85.1;85.2;85.3;85.4;85.5;85.6;85.7;85.8;85.9;86;86.1;86.2;86.3;86.4;86.5;86.6;86.7;86.8;86.9;87;87.1;87.2;87.3;87.4;87.5;87.6;87.7;87.8;87.9;88;88.1;88.2;88.3;88.4;88.5;88.6;88.7;88.8;88.9;89;89.22;89.44;89.66;89.8" & _
        "8;90.1;90.32;90.54;90.76;90.98;91.2;91.42;91.64;91.86;92.08;92.3;92.52;92.74;92.96;93.18;93.4;93.62;93.84;94.06;94.28;94.5;94.72;94.94;95.16;95.38;95.6;95.82;96.04;96.26;96.48;96.7;96.92;97.14;97.36;97.58;97.8;98.02;98.24;98.46;98.68;98.9;99.12;99.34;99.56;99.78;100})"
 

yenilik025

Altın Üye
Katılım
28 Eylül 2005
Mesajlar
233
Excel Vers. ve Dili
2007
Altın Üyelik Bitiş Tarihi
23-06-2027
Siz özel formül oluşturulmasını istiyorsunuz. Maalesef beni aşıyor.

Hocam sizlere teşekkür ederim ilgilendiğiniz için ancak burada,

Excel'de ki bulunan Fonksiyon lara aslında benim ekleme yapmak istediğim bu işlemi ama yapılabilirmi ama onu bilmiyorum. Kendimize özel bir fonksiyon Excel'de yoksa.
Kendimiz Fonksiyonunuzu hazırlayarak fonksiyona kullanabiliyoruz.

Örnek:

Modül sayfasına
Function abasari(vize As Integer, final As Integer)
abasari = 0.3 * vize + 0.7 * final
End Function

olarak hazırlanıp sonra

aktif duruma getirip =abasarı(A5) dediğimizde bize yukardaki formülü uygulayabiliyor.

İşte bu not işlemi içinde bunu bütün sayfalarımda kulanabilmem için fonksiyon olarak tanımlanabilir mi aslında esas sorum ve aradığım cevap bu çok teşekkür ederim.

İlginize bilginize.
 
Son düzenleme:

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Uzun uğraşlar sonunda kullanıcı tanımlı fonksiyona dönüştürebildim. Aşağıdaki kodları bir modüle kopyalayıp deneyiniz.

Hücrede kullanımı: =dörtyüz(E5) ya da =dörtyüz(2,5) şeklinde
Kod:
Function dörtyüz(not4)
Dim dörtlük()
Dim yüzlük()

dörtlük = Array(1.5, 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58, 1.59, 1.6, 1.61, 1.62, 1.63, _
        1.64, 1.65, 1.66, 1.67, 1.68, 1.69, 1.7, 1.71, 1.72, 1.73, 1.74, 1.75, 1.76, 1.77, 1.78, 1.79, 1.8, 1.81, 1.82, 1.83, _
        1.84, 1.85, 1.86, 1.87, 1.88, 1.89, 1.9, 1.91, 1.92, 1.93, 1.94, 1.95, 1.96, 1.97, 1.98, 1.99, 2, 2.01, 2.02, 2.03, _
        2.04, 2.05, 2.06, 2.07, 2.08, 2.09, 2.1, 2.11, 2.12, 2.13, 2.14, 2.15, 2.16, 2.17, 2.18, 2.19, 2.2, 2.21, 2.22, 2.23, _
        2.24, 2.25, 2.26, 2.27, 2.28, 2.29, 2.3, 2.31, 2.32, 2.33, 2.34, 2.35, 2.36, 2.37, 2.38, 2.39, 2.4, 2.41, 2.42, 2.43, _
        2.44, 2.45, 2.46, 2.47, 2.48, 2.49, 2.5, 2.51, 2.52, 2.53, 2.54, 2.55, 2.56, 2.57, 2.58, 2.59, 2.6, 2.61, 2.62, 2.63, _
        2.64, 2.65, 2.66, 2.67, 2.68, 2.69, 2.7, 2.71, 2.72, 2.73, 2.74, 2.75, 2.76, 2.77, 2.78, 2.79, 2.8, 2.81, 2.82, 2.83, _
        2.84, 2.85, 2.86, 2.87, 2.88, 2.89, 2.9, 2.91, 2.92, 2.93, 2.94, 2.95, 2.96, 2.97, 2.98, 2.99, 3, 3.01, 3.02, 3.03, _
        3.04, 3.05, 3.06, 3.07, 3.08, 3.09, 3.1, 3.11, 3.12, 3.13, 3.14, 3.15, 3.16, 3.17, 3.18, 3.19, 3.2, 3.21, 3.22, 3.23, _
        3.24, 3.25, 3.26, 3.27, 3.28, 3.29, 3.3, 3.31, 3.32, 3.33, 3.34, 3.35, 3.36, 3.37, 3.38, 3.39, 3.4, 3.41, 3.42, 3.43, _
        3.44, 3.45, 3.46, 3.47, 3.48, 3.49, 3.5, 3.51, 3.52, 3.53, 3.54, 3.55, 3.56, 3.57, 3.58, 3.59, 3.6, 3.61, 3.62, 3.63, _
        3.64, 3.65, 3.66, 3.67, 3.68, 3.69, 3.7, 3.71, 3.72, 3.73, 3.74, 3.75, 3.76, 3.77, 3.78, 3.79, 3.8, 3.81, 3.82, 3.83, _
        3.84, 3.85, 3.86, 3.87, 3.88, 3.89, 3.9, 3.91, 3.92, 3.93, 3.94, 3.95, 3.96, 3.97, 3.98, 3.99, 4)
    
yüzlük = Array(59, 59.2, 59.4, 59.6, 59.8, 60, 60.2, 60.4, 60.6, 60.8, 61, 61.2, 61.4, 61.6, 61.8, 62, 62.2, 62.4, 62.6, 62.8, 63, _
        63.2, 63.4, 63.6, 63.8, 64, 64.2, 64.4, 64.6, 64.8, 65, 65.2, 65.4, 65.6, 65.8, 66, 66.2, 66.4, 66.6, 66.8, 67, 67.2, _
        67.4, 67.6, 67.8, 68, 68.2, 68.4, 68.6, 68.8, 69, 69.1, 69.2, 69.3, 69.4, 69.5, 69.6, 69.7, 69.8, 69.9, 70, 70.1, 70.2, _
        70.3, 70.4, 70.5, 70.6, 70.7, 70.8, 70.9, 71, 71.1, 71.2, 71.3, 71.4, 71.5, 71.6, 71.7, 71.8, 71.9, 72, 72.1, 72.2, 72.3, _
        72.4, 72.5, 72.6, 72.7, 72.8, 72.9, 73, 73.1, 73.2, 73.3, 73.4, 73.5, 73.6, 73.7, 73.8, 73.9, 74, 74.2, 74.4, 74.6, 74.8, _
        75, 75.2, 75.4, 75.6, 75.8, 76, 76.2, 76.4, 76.6, 76.8, 77, 77.2, 77.4, 77.6, 77.8, 78, 78.2, 78.4, 78.6, 78.8, 79, 79.2, _
        79.4, 79.6, 79.8, 80, 80.2, 80.4, 80.6, 80.8, 81, 81.2, 81.4, 81.6, 81.8, 82, 82.2, 82.4, 82.6, 82.8, 83, 83.2, 83.4, _
        83.6, 83.8, 84, 84.1, 84.2, 84.3, 84.4, 84.5, 84.6, 84.7, 84.8, 84.9, 85, 85.1, 85.2, 85.3, 85.4, 85.5, 85.6, 85.7, 85.8, _
        85.9, 86, 86.1, 86.2, 86.3, 86.4, 86.5, 86.6, 86.7, 86.8, 86.9, 87, 87.1, 87.2, 87.3, 87.4, 87.5, 87.6, 87.7, 87.8, 87.9, _
        88, 88.1, 88.2, 88.3, 88.4, 88.5, 88.6, 88.7, 88.8, 88.9, 89, 89.22, 89.44, 89.66, 89.88, 90.1, 90.32, 90.54, 90.76, _
        90.98, 91.2, 91.42, 91.64, 91.86, 92.08, 92.3, 92.52, 92.74, 92.96, 93.18, 93.4, 93.62, 93.84, 94.06, 94.28, 94.5, 94.72, 94.94, 95.16, 95.38, 95.6, 95.82, 96.04, 96.26, 96.48, 96.7, 96.92, 97.14, 97.36, 97.58, 97.8, 98.02, 98.24, 98.46, _
        98.68, 98.9, 99.12, 99.34, 99.56, 99.78, 100)

dörtyüz = WorksheetFunction.Lookup(not4, dörtlük, yüzlük)
End Function
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Olmayan değerlerde DEĞER hatası veriyor ama onu gideremedim maalesef.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Aşağıdaki gibi daha iyi oldu, 1,5'un altında ve 4'ün üstünde olanlara 0 yazıyor, ara değerleri ise en yakın değere yuvarlıyor:
Kod:
Function dörtyüz(not4)
Dim dörtlük()
Dim yüzlük()
If not4 < 1.5 Or not4 > 4 Then
dörtyüz = 0
Else
dörtlük = Array(1.5, 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58, 1.59, 1.6, 1.61, 1.62, 1.63, _
        1.64, 1.65, 1.66, 1.67, 1.68, 1.69, 1.7, 1.71, 1.72, 1.73, 1.74, 1.75, 1.76, 1.77, 1.78, 1.79, 1.8, 1.81, 1.82, 1.83, _
        1.84, 1.85, 1.86, 1.87, 1.88, 1.89, 1.9, 1.91, 1.92, 1.93, 1.94, 1.95, 1.96, 1.97, 1.98, 1.99, 2, 2.01, 2.02, 2.03, _
        2.04, 2.05, 2.06, 2.07, 2.08, 2.09, 2.1, 2.11, 2.12, 2.13, 2.14, 2.15, 2.16, 2.17, 2.18, 2.19, 2.2, 2.21, 2.22, 2.23, _
        2.24, 2.25, 2.26, 2.27, 2.28, 2.29, 2.3, 2.31, 2.32, 2.33, 2.34, 2.35, 2.36, 2.37, 2.38, 2.39, 2.4, 2.41, 2.42, 2.43, _
        2.44, 2.45, 2.46, 2.47, 2.48, 2.49, 2.5, 2.51, 2.52, 2.53, 2.54, 2.55, 2.56, 2.57, 2.58, 2.59, 2.6, 2.61, 2.62, 2.63, _
        2.64, 2.65, 2.66, 2.67, 2.68, 2.69, 2.7, 2.71, 2.72, 2.73, 2.74, 2.75, 2.76, 2.77, 2.78, 2.79, 2.8, 2.81, 2.82, 2.83, _
        2.84, 2.85, 2.86, 2.87, 2.88, 2.89, 2.9, 2.91, 2.92, 2.93, 2.94, 2.95, 2.96, 2.97, 2.98, 2.99, 3, 3.01, 3.02, 3.03, _
        3.04, 3.05, 3.06, 3.07, 3.08, 3.09, 3.1, 3.11, 3.12, 3.13, 3.14, 3.15, 3.16, 3.17, 3.18, 3.19, 3.2, 3.21, 3.22, 3.23, _
        3.24, 3.25, 3.26, 3.27, 3.28, 3.29, 3.3, 3.31, 3.32, 3.33, 3.34, 3.35, 3.36, 3.37, 3.38, 3.39, 3.4, 3.41, 3.42, 3.43, _
        3.44, 3.45, 3.46, 3.47, 3.48, 3.49, 3.5, 3.51, 3.52, 3.53, 3.54, 3.55, 3.56, 3.57, 3.58, 3.59, 3.6, 3.61, 3.62, 3.63, _
        3.64, 3.65, 3.66, 3.67, 3.68, 3.69, 3.7, 3.71, 3.72, 3.73, 3.74, 3.75, 3.76, 3.77, 3.78, 3.79, 3.8, 3.81, 3.82, 3.83, _
        3.84, 3.85, 3.86, 3.87, 3.88, 3.89, 3.9, 3.91, 3.92, 3.93, 3.94, 3.95, 3.96, 3.97, 3.98, 3.99, 4)
    
yüzlük = Array(59, 59.2, 59.4, 59.6, 59.8, 60, 60.2, 60.4, 60.6, 60.8, 61, 61.2, 61.4, 61.6, 61.8, 62, 62.2, 62.4, 62.6, 62.8, 63, _
        63.2, 63.4, 63.6, 63.8, 64, 64.2, 64.4, 64.6, 64.8, 65, 65.2, 65.4, 65.6, 65.8, 66, 66.2, 66.4, 66.6, 66.8, 67, 67.2, _
        67.4, 67.6, 67.8, 68, 68.2, 68.4, 68.6, 68.8, 69, 69.1, 69.2, 69.3, 69.4, 69.5, 69.6, 69.7, 69.8, 69.9, 70, 70.1, 70.2, _
        70.3, 70.4, 70.5, 70.6, 70.7, 70.8, 70.9, 71, 71.1, 71.2, 71.3, 71.4, 71.5, 71.6, 71.7, 71.8, 71.9, 72, 72.1, 72.2, 72.3, _
        72.4, 72.5, 72.6, 72.7, 72.8, 72.9, 73, 73.1, 73.2, 73.3, 73.4, 73.5, 73.6, 73.7, 73.8, 73.9, 74, 74.2, 74.4, 74.6, 74.8, _
        75, 75.2, 75.4, 75.6, 75.8, 76, 76.2, 76.4, 76.6, 76.8, 77, 77.2, 77.4, 77.6, 77.8, 78, 78.2, 78.4, 78.6, 78.8, 79, 79.2, _
        79.4, 79.6, 79.8, 80, 80.2, 80.4, 80.6, 80.8, 81, 81.2, 81.4, 81.6, 81.8, 82, 82.2, 82.4, 82.6, 82.8, 83, 83.2, 83.4, _
        83.6, 83.8, 84, 84.1, 84.2, 84.3, 84.4, 84.5, 84.6, 84.7, 84.8, 84.9, 85, 85.1, 85.2, 85.3, 85.4, 85.5, 85.6, 85.7, 85.8, _
        85.9, 86, 86.1, 86.2, 86.3, 86.4, 86.5, 86.6, 86.7, 86.8, 86.9, 87, 87.1, 87.2, 87.3, 87.4, 87.5, 87.6, 87.7, 87.8, 87.9, _
        88, 88.1, 88.2, 88.3, 88.4, 88.5, 88.6, 88.7, 88.8, 88.9, 89, 89.22, 89.44, 89.66, 89.88, 90.1, 90.32, 90.54, 90.76, _
        90.98, 91.2, 91.42, 91.64, 91.86, 92.08, 92.3, 92.52, 92.74, 92.96, 93.18, 93.4, 93.62, 93.84, 94.06, 94.28, 94.5, 94.72, 94.94, 95.16, 95.38, 95.6, 95.82, 96.04, 96.26, 96.48, 96.7, 96.92, 97.14, 97.36, 97.58, 97.8, 98.02, 98.24, 98.46, _
        98.68, 98.9, 99.12, 99.34, 99.56, 99.78, 100)
    dörtyüz = 0
    dörtyüz = WorksheetFunction.Lookup(not4, dörtlük, yüzlük)
End If
End Function
 

yenilik025

Altın Üye
Katılım
28 Eylül 2005
Mesajlar
233
Excel Vers. ve Dili
2007
Altın Üyelik Bitiş Tarihi
23-06-2027
Hocam Teşekkür Ederim Bir çok Üniversitenin işine yarayacaktır. Tabiki üye ise. :)
Elinize kolunuza sağlık.


Uzun uğraşlar sonunda kullanıcı tanımlı fonksiyona dönüştürebildim. Aşağıdaki kodları bir modüle kopyalayıp deneyiniz.

Hücrede kullanımı: =dörtyüz(E5) ya da =dörtyüz(2,5) şeklinde
Kod:
Function dörtyüz(not4)
Dim dörtlük()
Dim yüzlük()

dörtlük = Array(1.5, 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58, 1.59, 1.6, 1.61, 1.62, 1.63, _
        1.64, 1.65, 1.66, 1.67, 1.68, 1.69, 1.7, 1.71, 1.72, 1.73, 1.74, 1.75, 1.76, 1.77, 1.78, 1.79, 1.8, 1.81, 1.82, 1.83, _
        1.84, 1.85, 1.86, 1.87, 1.88, 1.89, 1.9, 1.91, 1.92, 1.93, 1.94, 1.95, 1.96, 1.97, 1.98, 1.99, 2, 2.01, 2.02, 2.03, _
        2.04, 2.05, 2.06, 2.07, 2.08, 2.09, 2.1, 2.11, 2.12, 2.13, 2.14, 2.15, 2.16, 2.17, 2.18, 2.19, 2.2, 2.21, 2.22, 2.23, _
        2.24, 2.25, 2.26, 2.27, 2.28, 2.29, 2.3, 2.31, 2.32, 2.33, 2.34, 2.35, 2.36, 2.37, 2.38, 2.39, 2.4, 2.41, 2.42, 2.43, _
        2.44, 2.45, 2.46, 2.47, 2.48, 2.49, 2.5, 2.51, 2.52, 2.53, 2.54, 2.55, 2.56, 2.57, 2.58, 2.59, 2.6, 2.61, 2.62, 2.63, _
        2.64, 2.65, 2.66, 2.67, 2.68, 2.69, 2.7, 2.71, 2.72, 2.73, 2.74, 2.75, 2.76, 2.77, 2.78, 2.79, 2.8, 2.81, 2.82, 2.83, _
        2.84, 2.85, 2.86, 2.87, 2.88, 2.89, 2.9, 2.91, 2.92, 2.93, 2.94, 2.95, 2.96, 2.97, 2.98, 2.99, 3, 3.01, 3.02, 3.03, _
        3.04, 3.05, 3.06, 3.07, 3.08, 3.09, 3.1, 3.11, 3.12, 3.13, 3.14, 3.15, 3.16, 3.17, 3.18, 3.19, 3.2, 3.21, 3.22, 3.23, _
        3.24, 3.25, 3.26, 3.27, 3.28, 3.29, 3.3, 3.31, 3.32, 3.33, 3.34, 3.35, 3.36, 3.37, 3.38, 3.39, 3.4, 3.41, 3.42, 3.43, _
        3.44, 3.45, 3.46, 3.47, 3.48, 3.49, 3.5, 3.51, 3.52, 3.53, 3.54, 3.55, 3.56, 3.57, 3.58, 3.59, 3.6, 3.61, 3.62, 3.63, _
        3.64, 3.65, 3.66, 3.67, 3.68, 3.69, 3.7, 3.71, 3.72, 3.73, 3.74, 3.75, 3.76, 3.77, 3.78, 3.79, 3.8, 3.81, 3.82, 3.83, _
        3.84, 3.85, 3.86, 3.87, 3.88, 3.89, 3.9, 3.91, 3.92, 3.93, 3.94, 3.95, 3.96, 3.97, 3.98, 3.99, 4)
    
yüzlük = Array(59, 59.2, 59.4, 59.6, 59.8, 60, 60.2, 60.4, 60.6, 60.8, 61, 61.2, 61.4, 61.6, 61.8, 62, 62.2, 62.4, 62.6, 62.8, 63, _
        63.2, 63.4, 63.6, 63.8, 64, 64.2, 64.4, 64.6, 64.8, 65, 65.2, 65.4, 65.6, 65.8, 66, 66.2, 66.4, 66.6, 66.8, 67, 67.2, _
        67.4, 67.6, 67.8, 68, 68.2, 68.4, 68.6, 68.8, 69, 69.1, 69.2, 69.3, 69.4, 69.5, 69.6, 69.7, 69.8, 69.9, 70, 70.1, 70.2, _
        70.3, 70.4, 70.5, 70.6, 70.7, 70.8, 70.9, 71, 71.1, 71.2, 71.3, 71.4, 71.5, 71.6, 71.7, 71.8, 71.9, 72, 72.1, 72.2, 72.3, _
        72.4, 72.5, 72.6, 72.7, 72.8, 72.9, 73, 73.1, 73.2, 73.3, 73.4, 73.5, 73.6, 73.7, 73.8, 73.9, 74, 74.2, 74.4, 74.6, 74.8, _
        75, 75.2, 75.4, 75.6, 75.8, 76, 76.2, 76.4, 76.6, 76.8, 77, 77.2, 77.4, 77.6, 77.8, 78, 78.2, 78.4, 78.6, 78.8, 79, 79.2, _
        79.4, 79.6, 79.8, 80, 80.2, 80.4, 80.6, 80.8, 81, 81.2, 81.4, 81.6, 81.8, 82, 82.2, 82.4, 82.6, 82.8, 83, 83.2, 83.4, _
        83.6, 83.8, 84, 84.1, 84.2, 84.3, 84.4, 84.5, 84.6, 84.7, 84.8, 84.9, 85, 85.1, 85.2, 85.3, 85.4, 85.5, 85.6, 85.7, 85.8, _
        85.9, 86, 86.1, 86.2, 86.3, 86.4, 86.5, 86.6, 86.7, 86.8, 86.9, 87, 87.1, 87.2, 87.3, 87.4, 87.5, 87.6, 87.7, 87.8, 87.9, _
        88, 88.1, 88.2, 88.3, 88.4, 88.5, 88.6, 88.7, 88.8, 88.9, 89, 89.22, 89.44, 89.66, 89.88, 90.1, 90.32, 90.54, 90.76, _
        90.98, 91.2, 91.42, 91.64, 91.86, 92.08, 92.3, 92.52, 92.74, 92.96, 93.18, 93.4, 93.62, 93.84, 94.06, 94.28, 94.5, 94.72, 94.94, 95.16, 95.38, 95.6, 95.82, 96.04, 96.26, 96.48, 96.7, 96.92, 97.14, 97.36, 97.58, 97.8, 98.02, 98.24, 98.46, _
        98.68, 98.9, 99.12, 99.34, 99.56, 99.78, 100)

dörtyüz = WorksheetFunction.Lookup(not4, dörtlük, yüzlük)
End Function
 

Ekli dosyalar

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Ara değerler sıkıntı çıkarıyorsa (bir önceki mesajımdaki halinde ara değerlere de ARA fornksiyonunun özelliği gereği dönüşüm yapıyordu. Örneğin 3,995 tabloda olmadığı halde sonucunu 99,78 olarak getiriyordu) tam sonuçlar için İNDİS ve KAÇINCI formüllerini kullandığım aşağıdaki kodları kullanabilirsiniz.

Bu kod da 1,5'tan küçük ve 4'ten büyük değerler için 0 sonucunu veriyor ama tabloda olmayan değerler için DEĞER hatası veriyor. DEĞER hatasını gidermek için tecrübeli arkadaşlar yardım ederse sevinirim:

Kod:
Function dörtyüz(not4)
Dim dörtlük()
Dim yüzlük()
If not4 < 1.5 Or not4 > 4 Then
dörtyüz = 0
Else
dörtlük = Array(1.5, 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58, 1.59, 1.6, 1.61, 1.62, 1.63, _
        1.64, 1.65, 1.66, 1.67, 1.68, 1.69, 1.7, 1.71, 1.72, 1.73, 1.74, 1.75, 1.76, 1.77, 1.78, 1.79, 1.8, 1.81, 1.82, 1.83, _
        1.84, 1.85, 1.86, 1.87, 1.88, 1.89, 1.9, 1.91, 1.92, 1.93, 1.94, 1.95, 1.96, 1.97, 1.98, 1.99, 2, 2.01, 2.02, 2.03, _
        2.04, 2.05, 2.06, 2.07, 2.08, 2.09, 2.1, 2.11, 2.12, 2.13, 2.14, 2.15, 2.16, 2.17, 2.18, 2.19, 2.2, 2.21, 2.22, 2.23, _
        2.24, 2.25, 2.26, 2.27, 2.28, 2.29, 2.3, 2.31, 2.32, 2.33, 2.34, 2.35, 2.36, 2.37, 2.38, 2.39, 2.4, 2.41, 2.42, 2.43, _
        2.44, 2.45, 2.46, 2.47, 2.48, 2.49, 2.5, 2.51, 2.52, 2.53, 2.54, 2.55, 2.56, 2.57, 2.58, 2.59, 2.6, 2.61, 2.62, 2.63, _
        2.64, 2.65, 2.66, 2.67, 2.68, 2.69, 2.7, 2.71, 2.72, 2.73, 2.74, 2.75, 2.76, 2.77, 2.78, 2.79, 2.8, 2.81, 2.82, 2.83, _
        2.84, 2.85, 2.86, 2.87, 2.88, 2.89, 2.9, 2.91, 2.92, 2.93, 2.94, 2.95, 2.96, 2.97, 2.98, 2.99, 3, 3.01, 3.02, 3.03, _
        3.04, 3.05, 3.06, 3.07, 3.08, 3.09, 3.1, 3.11, 3.12, 3.13, 3.14, 3.15, 3.16, 3.17, 3.18, 3.19, 3.2, 3.21, 3.22, 3.23, _
        3.24, 3.25, 3.26, 3.27, 3.28, 3.29, 3.3, 3.31, 3.32, 3.33, 3.34, 3.35, 3.36, 3.37, 3.38, 3.39, 3.4, 3.41, 3.42, 3.43, _
        3.44, 3.45, 3.46, 3.47, 3.48, 3.49, 3.5, 3.51, 3.52, 3.53, 3.54, 3.55, 3.56, 3.57, 3.58, 3.59, 3.6, 3.61, 3.62, 3.63, _
        3.64, 3.65, 3.66, 3.67, 3.68, 3.69, 3.7, 3.71, 3.72, 3.73, 3.74, 3.75, 3.76, 3.77, 3.78, 3.79, 3.8, 3.81, 3.82, 3.83, _
        3.84, 3.85, 3.86, 3.87, 3.88, 3.89, 3.9, 3.91, 3.92, 3.93, 3.94, 3.95, 3.96, 3.97, 3.98, 3.99, 4)
    
yüzlük = Array(59, 59.2, 59.4, 59.6, 59.8, 60, 60.2, 60.4, 60.6, 60.8, 61, 61.2, 61.4, 61.6, 61.8, 62, 62.2, 62.4, 62.6, 62.8, 63, _
        63.2, 63.4, 63.6, 63.8, 64, 64.2, 64.4, 64.6, 64.8, 65, 65.2, 65.4, 65.6, 65.8, 66, 66.2, 66.4, 66.6, 66.8, 67, 67.2, _
        67.4, 67.6, 67.8, 68, 68.2, 68.4, 68.6, 68.8, 69, 69.1, 69.2, 69.3, 69.4, 69.5, 69.6, 69.7, 69.8, 69.9, 70, 70.1, 70.2, _
        70.3, 70.4, 70.5, 70.6, 70.7, 70.8, 70.9, 71, 71.1, 71.2, 71.3, 71.4, 71.5, 71.6, 71.7, 71.8, 71.9, 72, 72.1, 72.2, 72.3, _
        72.4, 72.5, 72.6, 72.7, 72.8, 72.9, 73, 73.1, 73.2, 73.3, 73.4, 73.5, 73.6, 73.7, 73.8, 73.9, 74, 74.2, 74.4, 74.6, 74.8, _
        75, 75.2, 75.4, 75.6, 75.8, 76, 76.2, 76.4, 76.6, 76.8, 77, 77.2, 77.4, 77.6, 77.8, 78, 78.2, 78.4, 78.6, 78.8, 79, 79.2, _
        79.4, 79.6, 79.8, 80, 80.2, 80.4, 80.6, 80.8, 81, 81.2, 81.4, 81.6, 81.8, 82, 82.2, 82.4, 82.6, 82.8, 83, 83.2, 83.4, _
        83.6, 83.8, 84, 84.1, 84.2, 84.3, 84.4, 84.5, 84.6, 84.7, 84.8, 84.9, 85, 85.1, 85.2, 85.3, 85.4, 85.5, 85.6, 85.7, 85.8, _
        85.9, 86, 86.1, 86.2, 86.3, 86.4, 86.5, 86.6, 86.7, 86.8, 86.9, 87, 87.1, 87.2, 87.3, 87.4, 87.5, 87.6, 87.7, 87.8, 87.9, _
        88, 88.1, 88.2, 88.3, 88.4, 88.5, 88.6, 88.7, 88.8, 88.9, 89, 89.22, 89.44, 89.66, 89.88, 90.1, 90.32, 90.54, 90.76, _
        90.98, 91.2, 91.42, 91.64, 91.86, 92.08, 92.3, 92.52, 92.74, 92.96, 93.18, 93.4, 93.62, 93.84, 94.06, 94.28, 94.5, 94.72, _
        94.94, 95.16, 95.38, 95.6, 95.82, 96.04, 96.26, 96.48, 96.7, 96.92, 97.14, 97.36, 97.58, 97.8, 98.02, 98.24, 98.46, _
        98.68, 98.9, 99.12, 99.34, 99.56, 99.78, 100)
    
dörtyüz = WorksheetFunction.Index(yüzlük, WorksheetFunction.Match(not4, dörtlük, 0))
End If
End Function
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba,

Sonuç satırı yerine aşağıdaki bloğu kullanın.

Kod:
Dim kacinci
On Error Resume Next
kacinci = WorksheetFunction.Match(not4, dörtlük, 0)
On Error GoTo 0
If kacinci > 0 Then
    dörtyüz = WorksheetFunction.Index(yüzlük, kacinci)
Else
    dörtyüz = 0
End If
.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Merhaba,

Sonuç satırı yerine aşağıdaki bloğu kullanın.

Kod:
Dim kacinci
On Error Resume Next
kacinci = WorksheetFunction.Match(not4, dörtlük, 0)
On Error GoTo 0
If kacinci > 0 Then
    dörtyüz = WorksheetFunction.Index(yüzlük, kacinci)
Else
    dörtyüz = 0
End If
.
Teşekkürler.

Ömer Bey'in verdiği kodlarla şu şekilde oldu, ara değerlerde 0 gösteriyor.

Kod:
Function dörtyüz(not4)
Dim dörtlük()
Dim yüzlük()
If not4 < 1.5 Or not4 > 4 Then
dörtyüz = 0
Else
dörtlük = Array(1.5, 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58, 1.59, 1.6, 1.61, 1.62, 1.63, _
        1.64, 1.65, 1.66, 1.67, 1.68, 1.69, 1.7, 1.71, 1.72, 1.73, 1.74, 1.75, 1.76, 1.77, 1.78, 1.79, 1.8, 1.81, 1.82, 1.83, _
        1.84, 1.85, 1.86, 1.87, 1.88, 1.89, 1.9, 1.91, 1.92, 1.93, 1.94, 1.95, 1.96, 1.97, 1.98, 1.99, 2, 2.01, 2.02, 2.03, _
        2.04, 2.05, 2.06, 2.07, 2.08, 2.09, 2.1, 2.11, 2.12, 2.13, 2.14, 2.15, 2.16, 2.17, 2.18, 2.19, 2.2, 2.21, 2.22, 2.23, _
        2.24, 2.25, 2.26, 2.27, 2.28, 2.29, 2.3, 2.31, 2.32, 2.33, 2.34, 2.35, 2.36, 2.37, 2.38, 2.39, 2.4, 2.41, 2.42, 2.43, _
        2.44, 2.45, 2.46, 2.47, 2.48, 2.49, 2.5, 2.51, 2.52, 2.53, 2.54, 2.55, 2.56, 2.57, 2.58, 2.59, 2.6, 2.61, 2.62, 2.63, _
        2.64, 2.65, 2.66, 2.67, 2.68, 2.69, 2.7, 2.71, 2.72, 2.73, 2.74, 2.75, 2.76, 2.77, 2.78, 2.79, 2.8, 2.81, 2.82, 2.83, _
        2.84, 2.85, 2.86, 2.87, 2.88, 2.89, 2.9, 2.91, 2.92, 2.93, 2.94, 2.95, 2.96, 2.97, 2.98, 2.99, 3, 3.01, 3.02, 3.03, _
        3.04, 3.05, 3.06, 3.07, 3.08, 3.09, 3.1, 3.11, 3.12, 3.13, 3.14, 3.15, 3.16, 3.17, 3.18, 3.19, 3.2, 3.21, 3.22, 3.23, _
        3.24, 3.25, 3.26, 3.27, 3.28, 3.29, 3.3, 3.31, 3.32, 3.33, 3.34, 3.35, 3.36, 3.37, 3.38, 3.39, 3.4, 3.41, 3.42, 3.43, _
        3.44, 3.45, 3.46, 3.47, 3.48, 3.49, 3.5, 3.51, 3.52, 3.53, 3.54, 3.55, 3.56, 3.57, 3.58, 3.59, 3.6, 3.61, 3.62, 3.63, _
        3.64, 3.65, 3.66, 3.67, 3.68, 3.69, 3.7, 3.71, 3.72, 3.73, 3.74, 3.75, 3.76, 3.77, 3.78, 3.79, 3.8, 3.81, 3.82, 3.83, _
        3.84, 3.85, 3.86, 3.87, 3.88, 3.89, 3.9, 3.91, 3.92, 3.93, 3.94, 3.95, 3.96, 3.97, 3.98, 3.99, 4)
    
yüzlük = Array(59, 59.2, 59.4, 59.6, 59.8, 60, 60.2, 60.4, 60.6, 60.8, 61, 61.2, 61.4, 61.6, 61.8, 62, 62.2, 62.4, 62.6, 62.8, 63, _
        63.2, 63.4, 63.6, 63.8, 64, 64.2, 64.4, 64.6, 64.8, 65, 65.2, 65.4, 65.6, 65.8, 66, 66.2, 66.4, 66.6, 66.8, 67, 67.2, _
        67.4, 67.6, 67.8, 68, 68.2, 68.4, 68.6, 68.8, 69, 69.1, 69.2, 69.3, 69.4, 69.5, 69.6, 69.7, 69.8, 69.9, 70, 70.1, 70.2, _
        70.3, 70.4, 70.5, 70.6, 70.7, 70.8, 70.9, 71, 71.1, 71.2, 71.3, 71.4, 71.5, 71.6, 71.7, 71.8, 71.9, 72, 72.1, 72.2, 72.3, _
        72.4, 72.5, 72.6, 72.7, 72.8, 72.9, 73, 73.1, 73.2, 73.3, 73.4, 73.5, 73.6, 73.7, 73.8, 73.9, 74, 74.2, 74.4, 74.6, 74.8, _
        75, 75.2, 75.4, 75.6, 75.8, 76, 76.2, 76.4, 76.6, 76.8, 77, 77.2, 77.4, 77.6, 77.8, 78, 78.2, 78.4, 78.6, 78.8, 79, 79.2, _
        79.4, 79.6, 79.8, 80, 80.2, 80.4, 80.6, 80.8, 81, 81.2, 81.4, 81.6, 81.8, 82, 82.2, 82.4, 82.6, 82.8, 83, 83.2, 83.4, _
        83.6, 83.8, 84, 84.1, 84.2, 84.3, 84.4, 84.5, 84.6, 84.7, 84.8, 84.9, 85, 85.1, 85.2, 85.3, 85.4, 85.5, 85.6, 85.7, 85.8, _
        85.9, 86, 86.1, 86.2, 86.3, 86.4, 86.5, 86.6, 86.7, 86.8, 86.9, 87, 87.1, 87.2, 87.3, 87.4, 87.5, 87.6, 87.7, 87.8, 87.9, _
        88, 88.1, 88.2, 88.3, 88.4, 88.5, 88.6, 88.7, 88.8, 88.9, 89, 89.22, 89.44, 89.66, 89.88, 90.1, 90.32, 90.54, 90.76, _
        90.98, 91.2, 91.42, 91.64, 91.86, 92.08, 92.3, 92.52, 92.74, 92.96, 93.18, 93.4, 93.62, 93.84, 94.06, 94.28, 94.5, 94.72, _
        94.94, 95.16, 95.38, 95.6, 95.82, 96.04, 96.26, 96.48, 96.7, 96.92, 97.14, 97.36, 97.58, 97.8, 98.02, 98.24, 98.46, _
        98.68, 98.9, 99.12, 99.34, 99.56, 99.78, 100)
    
Dim kacinci
On Error Resume Next
kacinci = WorksheetFunction.Match(not4, dörtlük, 0)
On Error GoTo 0
If kacinci > 0 Then
    dörtyüz = WorksheetFunction.Index(yüzlük, kacinci)
Else
    dörtyüz = 0
End If
End If
End Function
 

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
.

YÖK Dönüşüm Tablolarına göre, 4’lük ve 5'lik Sistemlerdeki Notların 100’lük Sistemdeki Karşılıklarının bulunmasına ilişkin yaptığım çalışma ektedir.

Siz de uygulayacağınız tabloyu bu dosyada yerine koyarak sonuca ulaşabilirsiniz.


.
 

Ekli dosyalar

Katılım
11 Ekim 2011
Mesajlar
61
Excel Vers. ve Dili
2013 TR
Altın Üyelik Bitiş Tarihi
27.05.2019
Üniversitenin biri, ismi lazım değil, 81-100 arası (yıllık ortalama) notların tamamına 4.0 notu veriyor. Yatay geçişlerde bu notu dayıyorlar.
YÖK sisteminde 4.0 100'ün karşılığıdır.

Gelen notlarda varsa önce 100'lük sistemi alın.
 
Üst