• DİKKAT

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

Fiyat Listesinden, aynı ürünün, farklı iki tarih arasındaki geçerli fiyatını getirmek.

  • Konbuyu başlatan Konbuyu başlatan besen
  • Başlangıç tarihi Başlangıç tarihi

besen

Altın Üye
Katılım
23 Mart 2007
Mesajlar
822
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021
İngilizce
Merhaba, iki tarih arasındaki tüm sorulara baktım ama benzer bir soru bulamadım.
Sorumu içeren örnek dosya ekte.
Teşekkür ederim


Stok Kodu

Geçerlilik Tarihi Başlangıcı

Geçerlilik Tarihi Bitişi

Fiyat

XYZ

8.06.2020​

1.04.2021​

85​

XYZ

2.04.2021​

31.07.2021​

95​

XYZ

1.08.2021​



122​
 

Ekli dosyalar

Bu şekilde dener misiniz ?
Kod:
=ARA(F2;$B$2:$C$4;$D$2:$D$4)
 
Merhaba, evet doğru çalışıyor, ancak sanırım bir şeyi unuttum, Ürün kodu da dikkate alınmalı.
Örnek Dosyayı tekrar ekledim.


Bu şekilde dener misiniz ?
Kod:
=ARA(F2;$B$2:$C$4;$D$2:$D$4)
 

Ekli dosyalar

=LOOKUP(2;1/($A$2:$A$15=$E2)/($B$2:$B$15<=$F2)/($C$2:$C$15>=$F2);$D$2:$D$15)
Bu formülle bir çözüm oluşturdum ama, en son veride bitiş tarihi henüz olmadığı için bu hücreyi dikkate almıyor. Hücreye ileri bir tarih girince formül doğru. Tarih alanı boş olduğu durumuna göre bir çözüm varmı?
 
=TOPLA.ÇARPIM(($A$2:$A$14=$E2)*($B$2:$B$14<=$F2)*(EĞER($C$2:$C$14="";1;$C$2:$C$14>=F2))*($D$2:$D$14))
 
formülün içine @ işaretini siz mi koyuyorsunuz?

230754
 
Özürlük bir durum yok. Lütfen

Bu @ işareti sebep oluyor ama sebebini bilmiyorum. Sizdeki dosyayı açınca ben böyle görüyorum.
Ben size bendeki dosyayı göndereyim. Oradan bakın
 

Ekli dosyalar

Özürlük bir durum yok. Lütfen

Bu @ işareti sebep oluyor ama sebebini bilmiyorum. Sizdeki dosyayı açınca ben böyle görüyorum.
Ben size bendeki dosyayı göndereyim. Oradan bakın

Anladım. Sorun @ işareti değil, dizi formülüymüş, ondan dolayı olmuş.
Teşekkür ederim.
 
Selamlar,
formülün içine @ işaretini siz mi koyuyorsunuz?

Sn @ÖmerFaruk
Bilgi amaçlı olarak yazıyorum...

@ işareti, özellikle Office 365 ile görünmeye başlayan bir işaret olup Örtük Kesişim İşleci olarak adlandırılır.
Konu ile ilgili Microsoft makalesi aşağıdadır.


=LOOKUP(2;1/($A$2:$A$15=$E2)/($B$2:$B$15<=$F2)/($C$2:$C$15>=$F2);$D$2:$D$15)
Bu formülle bir çözüm oluşturdum ama, en son veride bitiş tarihi henüz olmadığı için bu hücreyi dikkate almıyor. Hücreye ileri bir tarih girince formül doğru. Tarih alanı boş olduğu durumuna göre bir çözüm varmı?

Sn @besen
Dosyanızı göremem...
4 no lu mesajınızdan anladığım kadarıyla, (eğer yanlış anlamıyorsam)
Koşulları sağlayan, D2 : D15 arasında (BOŞ olmayan) en son DOLU olan hücredeki değeri arıyorsunuz...

Formülünüze D2 : D15<>"" koşulunu da ekleyerek deneyebilirsiniz...
Yani
=LOOKUP(2;1/($A$2:$A$15=$E2)/($B$2:$B$15<=$F2)/($C$2:$C$15>=$F2)/($D$2:$D$15<>"");$D$2:$D$15)

Ya da alternatif olarak
=İNDİS($D$2:$D$15;TOPLAMA(14;6;(SATIR($A$2:$A$15)-SATIR($A$2)+1)/($A$2:$A$15=$E2)/($B$2:$B$15<=$F2)/($C$2:$C$15>=$F2)/($D$2:$D$15<>"");1))

Burada
İNDİS = INDEX
TOPLAMA = AGGREGATE
SATIR = ROW
 
Belki de
C2 : C15 Bitiş Tarihleri kolonu olabilir. Bu durumda
=LOOKUP(2;1/($A$2:$A$15=$E2)/($B$2:$B$15<=$F2)/(IF($C$2:$C$15="";1;$C$2:$C$15>=$F2));$D$2:$D$15)
şeklinde denersiniz...
 
Geri
Üst