Tanımlı bir sütun aralığında yazılı en son değeri nasıl bulurum ?

Katılım
21 Ocak 2008
Mesajlar
312
Excel Vers. ve Dili
Excel 2013 / Türkçe
A sütunu tarih sütunu, A2:A32 arasında 1'den 31'e kadar tarih var.

B sütunu fiyat sütunu için kullanılıyor. Örneğin ayın 7 ve 21'inde 2 defa mal alımı olsun. 7'sindeki fiyat (B8 hücresi) 175 TL, 21'indeki fiyat (B22 hücresi) 172 TL. olsun.

İkinci mal hareketinin olduğu B22 hücresinin hemen sağına yani C22 hücresine öyle bir formül yazmak istiyorum ki; B22'deki 172 değerini, B sütunundaki sıfırdan büyük bir önceki değerle karşılaştırıp, 172' ile farkını hesaplayıp yazsın. Bunun için de yazacağım formül şöyle çalışmalı :

=B22-ENSONDEĞER(B$2:B21)

Her zaman mal alımı ayın 7 ve 21'ine denk gelmeyeceği için yazacağım bu formül her ne olursa olsun hep, hemen solundaki Bxx hücresi değerini, Bxx'den evvel son yazılan fiyattan çıkarmalı.

Mantık olarak bu işi yapabilecek formulü bulamadım. Bu işi nasıl yaptırabilirim ?
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,247
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
ARA fonksiyonunu kullanabilirsiniz.
 
Katılım
21 Ocak 2008
Mesajlar
312
Excel Vers. ve Dili
Excel 2013 / Türkçe
ARA fonksiyonu, aşağıdaki gibi "bilinen" bir değer için çalışıyor.
=ARA(175;(B$2:B22)) şeklinde...

Oysa benim, hem fiyatlarım hem de fiyatları gireceğim günler değişken. Yani bir sonraki ay; ayın 5, 11, 28'inde 3 ayrı alış olabilir ve fiyatlar da; 33.00 TL, 33.20 TL ve 34.10 TL olabilir. Ben mesela ayın 28'inde; B29 hücresine 34.10 TL fiyatı girdiğimde, C29 hücresinde bir önceki alış fiyatı ile arasındaki fiyat farkını bulmak istiyorum. Ancak C29 hücresinde öyle bir fonksiyon kullanmalıyım ki, B$2:B28 aralığında, "en son sıfırdan büyük değer" neyse onu yani 33.20'yi bulmalı.
Bu rakamlar ve tarihler değişken olduğuna göre formül; tanımlı aralıkta her zaman en son hücredeki yani en alttaki değer neyse onu bulmalı...
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,247
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

Kod:
=B22-ARA(2;1/(B2:B21<>0);B2:B21)
 
Katılım
21 Ocak 2008
Mesajlar
312
Excel Vers. ve Dili
Excel 2013 / Türkçe
Çalıştı, çok teşekkür ediyorum, sağolun, var olun...
 
Katılım
21 Ocak 2008
Mesajlar
312
Excel Vers. ve Dili
Excel 2013 / Türkçe
Korhan bey, fonksiyonu başka yerlerde de kullanabilmek amacıyla formül bileşenlerini anlamaya çalıştım. Bunun için de formül bileşenlerini farklı şekillerde deneyip sonuçlarını görmek istedim.

=ARA(2;1/(B2:B21<>0);B2:B21)

fonksiyonunda ilk parantezden sonraki "2"yi 1 yaptığımda sonuç değişmedi. Böyle olunca da işlevini anlayamadım.

Bu "2" rakamından sonraki fonksiyonun 2. elemanı olan 1/(B2:B21<>0)'da neden 1'i kıstasa böldüğünüzü anlayamadım. Formulün buradaki çalışma mantığı nedir ?

Şimdiden teşekkürler ediyorum....
 
Üst