• DİKKAT

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

Bu formül daha kısa hale gelebilir mi?

haklısınız henüz linkteki dosyayı ındirdiğim halde inceleme zamanım olmadı. bu formülünüz de hücreler boş olunca hata veriyor.
teşekkür ederim. ben aşağıdakinde karar kıldım.
=EĞER(BAĞ_DEĞ_SAY(B17:B24);ARA(99999;B17:B24);"")
ilginize çok teşekkürler arkadaşım.

Ataman,

BSayı (Büyük Sayı'nin kısaltılmışı) 9,99999999999999E+307 tanımlarsan, formül şöyle düzenlenir:

=EĞER(BAĞ_DEĞ_SAY(B17:B24);ARA(BSayı;B17:B24);"")

Eğer sözkonusu formül ilgini çekiyorsa:

http://tinyurl.com/ytl5uq

http://www.mrexcel.com/board2/viewtopic.php?t=105725
 
Son düzenleme:
O zaman veridiğim linkteki dosyayı incelemediniz.

Arada boşluk varsa;

=ARA(2;1/(1-EBOŞSA(B1:B65523));B1:B65523)

formülünü deneyin.

EBOŞSA ISBLANK mi?

Sayısal bir alana uygulandığında bunun

=ARA(9,99999999999999E+307;B1:B65523)

formülünden tek farkı sonuca varmakta daha çok zaman gerektirmesidir.
 
Son düzenleme:
TEŞEKKÜR EDERİM.bu förmül aşağıdan yukarı bakarak en alttaki ilk sayıyı alıyor. bunun tam tersini yani yukarıdan aşağı nasıl yaparız.
 
EBOŞSA ISBLANK mi?

Sayısal bir alana uygulandığında bunun

=ARA(9,99999999999999E+30;B1:B65523)

formülünden tek farkı sonuca varmakta daha çok zaman gerektirmesidir.

Haklısınız.:hey:

Ancak, Sayın Ataman'ın uzun formüllere ve 9,99999999999999E+30 (Bignum-Büyüksayı)'ya antipatisi var. :mrgreen:
 
TEŞEKKÜR EDERİM.bu förmül aşağıdan yukarı bakarak en alttaki ilk sayıyı alıyor. bunun tam tersini yani yukarıdan aşağı nasıl yaparız.

Ataman,

Bu förmül binary search denilen bir algoritma ile her hücreye bakmaya gerek görmeden çok çabuk sonuca varır. Aşadaki verilerden çıkarsak, ne sonuc elde etmek istiyorsun?

45
36
57
55
21
 
sayın yurttaş,
ona antipati demeyelim. ben büyük sayıyı işimi görecek şekilde kısalttım sadece. ilginize teşekkür ederim.
 
sayın akyürek,
bu förmül benim işimi gördü : =EĞER(BAĞ_DEĞ_SAY(B17:B24);ARA(99999;B17:B24);"")
ayrıca aşağıdan yukarı değilde yukarıdan aşağı nasıl aratırız onu merak ettim hepsi bu.
teşekkür ederim.
 
Ataman,

Bu förmül binary search denilen bir algoritma ile her hücreye bakmaya gerek görmeden çok çabuk sonuca varır. Aşadaki verilerden çıkarsak, ne sonuc elde etmek istiyorsun?

45
36
57
55
21
sayın akyürek,
yukarıdaki sayılardan yola çıkarsak. eğer 45 yoksa 36 yı alsın, oda yoksa 57 yi alsın, o da yoksa 55 i alsın ve tanımladığım aralıkta böyle gitsin.
teşekkürler.
 
sayın akyürek,
bu förmül benim işimi gördü : =EĞER(BAĞ_DEĞ_SAY(B17:B24);ARA(99999;B17:B24);"")
ayrıca aşağıdan yukarı değilde yukarıdan aşağı nasıl aratırız onu merak ettim hepsi bu.
teşekkür ederim.

Binary search algoritması, eğer bu deyimleri ille kullanmak gerekliyse, "hem yukardan aşağı hem aşağıdan yukarı" arar.
 
sayın akyürek,
yukarıdaki sayılardan yola çıkarsak. eğer 45 yoksa 36 yı alsın, oda yoksa 57 yi alsın, o da yoksa 55 i alsın ve tanımladığım aralıkta böyle gitsin.
teşekkürler.

Eğer sözkonusu formül öyle yapsa, çabukluğunu yitirir.

http://www.nist.gov/dads/HTML/binarySearch.html

KAÇINCI(Değer;TekBoyutluAlan;1)
ŞYARA(Değer;DikeyTablo;Sütun;1)
YATAYARA(Değer;YatayTablo;Sıra;1)
ARA(Değer;AramaVektörü;SonuçVektörü)

hep binary search uygularlar.
 
SAYIN AKYÜREK,
=EĞER(B17>0;B17;EĞER(B18>0;B18;EĞER(B19>0;B19;EĞER(B20>0;B20;EĞER(B21>0;B21;EĞER(B22>0;B22;EĞER(B23>0;B23;B24)))))))
eğer kullanarak yaptığım bu işlemi yapan başka formülü ben oluşturamadım. bu konuda sizler kadar usta değilim. bana yaparsanız memnun olurum. teşekkürler.
 
SAYIN AKYÜREK,
=EĞER(B17>0;B17;EĞER(B18>0;B18;EĞER(B19>0;B19;EĞER(B20>0;B20;EĞER(B21>0;B21;EĞER(B22>0;B22;EĞER(B23>0;B23;B24)))))))
eğer kullanarak yaptığım bu işlemi yapan başka formülü ben oluşturamadım. bu konuda sizler kadar usta değilim. bana yaparsanız memnun olurum. teşekkürler.

Niye günaha girim ki? :mrgreen: Alanda 60000 değer varsa 60000 EĞER'mi sonuca götürecek?
 
60000 adet "eğer" kullanarak yapın demedim. eğer kullanmadan yapılan başka förmül var mı diye sordum. siz günaha girmeyin. bilmiyorsanız bilmiyorum deyin. ben yapamadığımı açıkça belirttim. yardım istedim.
 
60000 adet "eğer" kullanarak yapın demedim. eğer kullanmadan yapılan başka förmül var mı diye sordum. siz günaha girmeyin. bilmiyorsanız bilmiyorum deyin. ben yapamadığımı açıkça belirttim. yardım istedim.

Soruyu yanlış anladığım belli. Bu tabi birazda beklenmedik soru: Zaten başka, EĞER'siz, bir formül verdim. Yanıtımda, EĞER'de ısrar ettiğinizi sandığımdan, dolaylı olarak EĞER'in sözkonusu problemde ve benzer problemlerde kullanmanın uygun olmadığını dile getirmek istedim.
 
verdiğiniz yollardan ben beceremedim. ilginize teşekkür ederim. saygılar.
 
sayın akyürek,
yukarıdaki sayılardan yola çıkarsak. eğer 45 yoksa 36 yı alsın, oda yoksa 57 yi alsın, o da yoksa 55 i alsın ve tanımladığım aralıkta böyle gitsin.
teşekkürler.

Sayısal değer bulmak için - Ctrl+Shift+Enter
Kod:
'=TOPLA(KAYDIR($B$17;;;KAÇINCI(1;(ESAYIYSA($B$17:$B$24))*($B$17:$B$24>0);0);1))

Metinsel değer için - Ctrl+Shift+Enter
Kod:
'=KAYDIR($B$17;KAÇINCI(1;(EMETİNSE($B$17:$B$24))*($B$17:$B$24>0);0)-1;;;)
 
Son düzenleme:
sayın zorro,
nihayet 2.sorunuma aradığım yanıtı siz verdiniz.çok teşekkür ederim. elleriniz dert görmesin. başarılar dilerim.
 
Geri
Üst