Referansa Göre En Yüksek Stokluyu Bulma

Referansa Göre En Yüksek Stokluyu Bulma

ozgur_ayaz

Kullanıcı
Katılım
28 Tem 2022
Mesajlar
53
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Herkese merhaba

Aşağıdaki sarı alanlarda yazan durumlara göre formül yazmam gerekiyor ama dizi formülü gerektiği için yine yapamadım. İlgili Excel'i dosya olarak ekledim

Amacım (I1 hücresi için): M1 mağazasının referans mağazaları arasında (referans sayfasında), en yüksek MALZEME1 stoğuna sahip mağazayı bulmak. Daha sonra 2. en yüksek stoklu, 3.... diye götürmek.

Yardımlarınız için şimdiden teşekkürler. Bu çalışmayı mağazalar arası transfer için kullanmak istiyorum.

1647353311799.webp
 

Ekli dosyalar

Genel açıklama yerine; mevcut verilere göre birkaç hücre için olması gereken sonucu elle yazıp,
bu sonuçlara nasıl ulaştığınızı açıklasaydınız daha iyi olurmuş.
 
Selamlar,
Üzerinde çalışmışken ekleyeyim istedim.
Yanlış anlamış da olabilirim.

1647361730072.webp


Formül DİZİ Formüldür.
Resimde görüldüğü üzere, M2 mağazasının bulunduğu satırda Stok5 ve Stok 6 değerlerine karşılık olarak "0" değerleri mevcut. Anlamı, referans listesinde, M2 ye ait 4 adet Mağaza vardır. 5. ve 6. mağazalar olmadığından "0" yazılmakta.

0 yerine BOŞ yazılsın isterseniz
1 - Görülen uzun formülü 2 defa çalıştırarak
=EĞER(formül = ""; ""; formül )
şeklinde kullanabilirsiniz.... (Formül, CTRL + SHIFT + ENTER ile girilmeli...)
2 - SARI alanı seçin.... SAYI Biçimlendirme >>> İsteğe uyarlanmış >>> Formül kısmına [=0];Genel yazın.
3 - Formülle yapacaksanız, formülü
=METNEÇEVİR(formül ; ";;;@")
şeklinde yazıp, CTRL + SHIFT + ENTER ile girerek, sağa ve aşağıya kopyalarsınız....
 

Ekli dosyalar

Selamlar,
Üzerinde çalışmışken ekleyeyim istedim.
Yanlış anlamış da olabilirim.

1647361730072.webp

Formül DİZİ Formüldür.
Resimde görüldüğü üzere, M2 mağazasının bulunduğu satırda Stok5 ve Stok 6 değerlerine karşılık olarak "0" değerleri mevcut. Anlamı, referans listesinde, M2 ye ait 4 adet Mağaza vardır. 5. ve 6. mağazalar olmadığından "0" yazılmakta.

0 yerine BOŞ yazılsın isterseniz
1 - Görülen uzun formülü 2 defa çalıştırarak
=EĞER(formül = ""; ""; formül )
şeklinde kullanabilirsiniz.... (Formül, CTRL + SHIFT + ENTER ile girilmeli...)
2 - SARI alanı seçin.... SAYI Biçimlendirme >>> İsteğe uyarlanmış >>> Formül kısmına [=0];Genel yazın.
3 - Formülle yapacaksanız, formülü
=METNEÇEVİR(formül ; ";;;@")
şeklinde yazıp, CTRL + SHIFT + ENTER ile girerek, sağa ve aşağıya kopyalarsınız....
Elinize sağlık. Burada ben not olarak belirtmeyi unutmuşum. 0 stok olan (stok kayıtlarında ilgili malzeme stoğu olmayan) mağazaların gelmesini istemiyorum. Bu 0' stoğu olanlar görünmesini, 5'den az stoğu olanlar görünmesin şeklinde modifiye etmem gerekebilir . Buna göre sonradan değiştirebileceğimiz bir ek formül yazma şansımız olur mu.
 
Formül hem Dizi Formül ve hem de uzun bir formül...
Ek kriterler ekleyince, aynı formül parçalarını en az 2 defa daha fazladan yazıp çalıştırmak gerekecek. Bu da önemli performans kaybı..
Diğer taraftan, dosyanızda satır sayıları az. Ama gerçekte az olacağını bilmiyorum. Satır sayıları artmaya başladıkça kasılmalar / yavaşlamalar olması da çok muhtemel...

Bu durumda çözümü makroda aramak çok daha uygun olacaktır. Ya da dizi formüldeki tekrarlanan formül parçacıklarını kullanarak yardımcı alanlar yapıp, bu yardımcı alanları kullanarak sonuca gitmek de bir uygun çözüm olabilir.

Şahsen yerinizde ben olsam ek kriterleri devreye almazdım... Belki de (gerçek dosyanın durumuna göre tabi ki) resimde göreceğiniz biçimde kullanmayı denerdim.
(Resimde göreceğiniz formül de dizi formüldür.)



1647426182419.webp
 
Formül hem Dizi Formül ve hem de uzun bir formül...
Ek kriterler ekleyince, aynı formül parçalarını en az 2 defa daha fazladan yazıp çalıştırmak gerekecek. Bu da önemli performans kaybı..
Diğer taraftan, dosyanızda satır sayıları az. Ama gerçekte az olacağını bilmiyorum. Satır sayıları artmaya başladıkça kasılmalar / yavaşlamalar olması da çok muhtemel...

Bu durumda çözümü makroda aramak çok daha uygun olacaktır. Ya da dizi formüldeki tekrarlanan formül parçacıklarını kullanarak yardımcı alanlar yapıp, bu yardımcı alanları kullanarak sonuca gitmek de bir uygun çözüm olabilir.

Şahsen yerinizde ben olsam ek kriterleri devreye almazdım... Belki de (gerçek dosyanın durumuna göre tabi ki) resimde göreceğiniz biçimde kullanmayı denerdim.
(Resimde göreceğiniz formül de dizi formüldür.)



1647426182419.webp
Teşekkürler. Formülü ekrandan almak uzun sürecek, yazılı hali var mı acaba ?
 
Teşekkürler. Formülü ekrandan almak uzun sürecek, yazılı hali var mı acaba ?

=EĞERHATA(METNEÇEVİR(İNDİS(KAYDIR(referans!$C$2;KAÇINCI($A2;referans!$A$2:$A$11;0)-1;;1;SÜTUNSAY(referans!$C$1:$H$1));KAÇINCI(BÜYÜK(ÇOKETOPLA(stok!$E$2:$E$23;stok!$A$2:$A$23;KAYDIR(referans!$C$2;KAÇINCI($A2;referans!$A$2:$A$11;0)-1;;1;SÜTUNSAY(referans!$C$1:$H$1));stok!$D$2:$D$23;$E2)-SÜTUN(referans!$C$1:$H$1)/10^3;SÜTUNSAY($I$1:I$1));ÇOKETOPLA(stok!$E$2:$E$23;stok!$A$2:$A$23;KAYDIR(referans!$C$2;KAÇINCI($A2;referans!$A$2:$A$11;0)-1;;1;SÜTUNSAY(referans!$C$1:$H$1));stok!$D$2:$D$23;$E2)-SÜTUN(referans!$C$1:$H$1)/10^3;0));";;;@");"")&DAMGA(10)&"("&EĞERHATA(1/(1/BÜYÜK(ÇOKETOPLA(stok!$E$2:$E$23;stok!$A$2:$A$23;KAYDIR(referans!$C$2;KAÇINCI($A2;referans!$A$2:$A$11;0)-1;;1;SÜTUNSAY(referans!$C$1:$H$1));stok!$D$2:$D$23;$E2);SÜTUNSAY($I$1:I$1)));"–")&")"

Destan gibi formül olmuş.
Evet....
Formülü bir de açık haliyle yukarıda yazınca hakikaten "tren gibi" upuzun bir formül oldu...
 
=EĞERHATA(METNEÇEVİR(İNDİS(KAYDIR(referans!$C$2;KAÇINCI($A2;referans!$A$2:$A$11;0)-1;;1;SÜTUNSAY(referans!$C$1:$H$1));KAÇINCI(BÜYÜK(ÇOKETOPLA(stok!$E$2:$E$23;stok!$A$2:$A$23;KAYDIR(referans!$C$2;KAÇINCI($A2;referans!$A$2:$A$11;0)-1;;1;SÜTUNSAY(referans!$C$1:$H$1));stok!$D$2:$D$23;$E2)-SÜTUN(referans!$C$1:$H$1)/10^3;SÜTUNSAY($I$1:I$1));ÇOKETOPLA(stok!$E$2:$E$23;stok!$A$2:$A$23;KAYDIR(referans!$C$2;KAÇINCI($A2;referans!$A$2:$A$11;0)-1;;1;SÜTUNSAY(referans!$C$1:$H$1));stok!$D$2:$D$23;$E2)-SÜTUN(referans!$C$1:$H$1)/10^3;0));";;;@");"")&DAMGA(10)&"("&EĞERHATA(1/(1/BÜYÜK(ÇOKETOPLA(stok!$E$2:$E$23;stok!$A$2:$A$23;KAYDIR(referans!$C$2;KAÇINCI($A2;referans!$A$2:$A$11;0)-1;;1;SÜTUNSAY(referans!$C$1:$H$1));stok!$D$2:$D$23;$E2);SÜTUNSAY($I$1:I$1)));"–")&")"


Evet....
Formülü bir de açık haliyle yukarıda yazınca hakikaten "tren gibi" upuzun bir formül oldu...
Formül gerçekten güzel olmuş sizi de uğraştırıyorum ama bana: "0 olanları/Yada 5'in altında olanları göstermemesi lazım" tarzında bir formül lazım ? Envanterden dolayı, raporu atacağım kişilerin stok sayılarını görmemesi gerekiyor. Ben onlara "Şu mağazalarda stok var - 5 üzerinde stok var" diye raporu atacağım.
 
Benzer Konular Popüler İçerikler Daha Fazlası
Geri
Üst Alt