Düşeyara Sorunu

Bwtunc

Altın Üye
Katılım
28 Kasım 2008
Mesajlar
156
Excel Vers. ve Dili
değişken
Altın Üyelik Bitiş Tarihi
15-08-2026
Merhaba,

Meramımı ekli dosyada daha iyi anlattığımı düşünüyorum. Burada da kısaca özetlemek gerekirse .

Veri doğrulama ile oluşturulmuş bir lokasyon listesi var. Bu lokasyon listesinden herhangi bir lokasyon seçildiğinde olması gerekenden mevcut durumu çıkaracak sonra bir hücreye 1 kişi, 2 kişi, o kişi , -1 kişi gibi yazacak.

Aslında basit bir toplama çıkarma gibi görünsede listeden seçilecek lokasyona göre değerler değişeceğinden bir türlü kafamda problemi çözemedim.

Yardımcı olursanız sevinirim.
 

Ekli dosyalar

muygun

Özel Üye
Katılım
6 Temmuz 2004
Mesajlar
9,182
Excel Vers. ve Dili
Excel-2003 Türkçe
Merhaba;
Doğru anladıysam eki deneyin.
İyi çalışmalar.
 

Ekli dosyalar

Katılım
31 Ocak 2012
Mesajlar
2,430
Excel Vers. ve Dili
Excel 2010 , Türkçe
Altın Üyelik Bitiş Tarihi
24.01.2019
selam,
alternatif olarak eki inceleyin...
(Not : dosyada yeni düzenleme yapıldı)
 

Ekli dosyalar

Bwtunc

Altın Üye
Katılım
28 Kasım 2008
Mesajlar
156
Excel Vers. ve Dili
değişken
Altın Üyelik Bitiş Tarihi
15-08-2026
Merhaba;
Doğru anladıysam eki deneyin.
İyi çalışmalar.
Selamlar üstadım öncelikle baktığın ve yardım etymeye çalıştığın için emek harcadığın için çok ama çok teşekkür ederim. ama sanırım tam anlatmak istediğimi anlatamamışım birşeyler eksik kalmış.

selam,
alternatif olarak eki inceleyin...
(Not : dosyada yeni düzenleme yapıldı)
Sakman26 Nasıl teşekkür etsem azdır harika bir çözüm olmuş ama daha önce ben bu mantıkla formül hiç kullanmadım. Biraz bana mantığını anlatırmısın. nereden başladın nasıl mantık kurdun? bunları anlatırsan bir balık tutmasını öğretmiş olursun.

Bu arada geç yazdığım için affola.

Saygılarımla
 
Katılım
31 Ocak 2012
Mesajlar
2,430
Excel Vers. ve Dili
Excel 2010 , Türkçe
Altın Üyelik Bitiş Tarihi
24.01.2019
Sakman26 Nasıl teşekkür etsem azdır harika bir çözüm olmuş ama daha önce ben bu mantıkla formül hiç kullanmadım. Biraz bana mantığını anlatırmısın. nereden başladın nasıl mantık kurdun? bunları anlatırsan bir balık tutmasını öğretmiş olursun.

Bu arada geç yazdığım için affola.

Saygılarımla
selam,
Öncelikle, geri dönüş için ben teşekkür ediyorum..
Dokuman,
Arama - Başvuru fonksiyonları yardımıyla Arama ve de arama yapılanların sayımı şeklinde yapıldı..
Burada önemli olan, Metin araması (yani CM , ACM (ki karakterleri içerisinde CM de var dikkat..) ve CC ler arattırılacak) olduğundan , aranılanlarla arattırılanların karakter olarak bir-bir aynı olması gerekmekte.. Karakterleri içerir şeklinde aratırsak karşımıza ACM ve CM deki karışıklık durumu gelecek. O nedenle arattırmalarda kelime komple alındı...
Bu sebeple, dokumana bakarsanız, CM , ACM ve CC kodlarının bulunduğu tüm hücreler , Data sayfasındaki F3,G3,H3 hücrelerindeki CM, ACM ve CC kodlarından formülle alınmakta.
Aynı şekilde , Sorgu sayfasındaki liste için ise, CM-1 , CM-2 ... ibareleri de Data sayfasında formülle elde edilip bunlar formülle Liste sayfasına alındı.
Sonuçta, Aranılacak kelimeler bir birleriyle aynı karakterleri içermesi sağlandı...
İşin başlangıcı burası...
Daha sonra ise, Olması gereken , Mevcut Durum ve Sorgulama sonuç sayıları ile listenin hesaplaması , Data sayfasındaki Lokasyonun bulunduğu satır ve sütunları KAYDIR fonksiyonu ile alan şeklinde yazdırılarak hesaplamalar yaptırıldı...
Mantık bu...

Kullanılan fonksiyonların açıklamalarını , örnekleri, yardım da okuyup inceleyebilirsiniz... ( Bilgi : Bunun için formüllü hücreye gelin, formula bar da fonksiyondan hemen sonraki parantez aç işaretinden hemen sonraki karakteri seçin. Örnek verelim KAYDIR(A... şeklinde olsun. Kursörü koyup seçeceğimiz yer ( ile A arası... Bu durumda formula bar da açıklama metni çıkacak. Fonksiyon üzerine tıklayın. Fonksiyon yardımı açılacaktır.. )
Anlamakta güçlük çektiğiniz kısımları , fonksiyonları yazarsanız açıklamaya çalışırım..
kolay gelsin..
 

Bwtunc

Altın Üye
Katılım
28 Kasım 2008
Mesajlar
156
Excel Vers. ve Dili
değişken
Altın Üyelik Bitiş Tarihi
15-08-2026
selam,
Öncelikle, geri dönüş için ben teşekkür ediyorum..
Dokuman,
Arama - Başvuru fonksiyonları yardımıyla Arama ve de arama yapılanların sayımı şeklinde yapıldı..
Burada önemli olan, Metin araması (yani CM , ACM (ki karakterleri içerisinde CM de var dikkat..) ve CC ler arattırılacak) olduğundan , aranılanlarla arattırılanların karakter olarak bir-bir aynı olması gerekmekte.. Karakterleri içerir şeklinde aratırsak karşımıza ACM ve CM deki karışıklık durumu gelecek. O nedenle arattırmalarda kelime komple alındı...
Bu sebeple, dokumana bakarsanız, CM , ACM ve CC kodlarının bulunduğu tüm hücreler , Data sayfasındaki F3,G3,H3 hücrelerindeki CM, ACM ve CC kodlarından formülle alınmakta.
Aynı şekilde , Sorgu sayfasındaki liste için ise, CM-1 , CM-2 ... ibareleri de Data sayfasında formülle elde edilip bunlar formülle Liste sayfasına alındı.
Sonuçta, Aranılacak kelimeler bir birleriyle aynı karakterleri içermesi sağlandı...
İşin başlangıcı burası...
Daha sonra ise, Olması gereken , Mevcut Durum ve Sorgulama sonuç sayıları ile listenin hesaplaması , Data sayfasındaki Lokasyonun bulunduğu satır ve sütunları KAYDIR fonksiyonu ile alan şeklinde yazdırılarak hesaplamalar yaptırıldı...
Mantık bu...

Kullanılan fonksiyonların açıklamalarını , örnekleri, yardım da okuyup inceleyebilirsiniz... ( Bilgi : Bunun için formüllü hücreye gelin, formula bar da fonksiyondan hemen sonraki parantez aç işaretinden hemen sonraki karakteri seçin. Örnek verelim KAYDIR(A... şeklinde olsun. Kursörü koyup seçeceğimiz yer ( ile A arası... Bu durumda formula bar da açıklama metni çıkacak. Fonksiyon üzerine tıklayın. Fonksiyon yardımı açılacaktır.. )
Anlamakta güçlük çektiğiniz kısımları , fonksiyonları yazarsanız açıklamaya çalışırım..
kolay gelsin..
Asıl teşekkür etmesi gereken benim. Destek istiyorum bir kaç gün sonra yazıyorum (elimde olmayan nedenlerden dolayı) yine de aynı öz veriyle yanıtlıyorsunuz.

Örneğin şu formülü yorumlayabilirmiyiz

=EĞER($U$2="";"";KAYDIR(Data!$B$3;KAÇINCI($U$2;sinema;0);KAÇINCI($W4;ara;0)-1))

Benim yorumum: (böyle yazdım ama yorumlayamadım ) :)
 

Bwtunc

Altın Üye
Katılım
28 Kasım 2008
Mesajlar
156
Excel Vers. ve Dili
değişken
Altın Üyelik Bitiş Tarihi
15-08-2026
Ayrıca birşey daha sormak istiyorum müsadenizle.

Aşağıda belirttiğim komutu nasıl yapabilirim. Excelle aramı yeni yeni düzelttiğimden tüm komutlara hakim değilim bu nedenle bir türlü Eğeri iç içe kullanamadım.

Fazladan ek ekleyerek kalabalıklaştırmak istemedim . O nedenle sizin gönderdiğiniz tabloya göre konuşarak şu komutu çalıştırmak istiyorum.

AF2 Hücresinde ki bölge seçildiğinde N sütununda 0'dan büyük değerleri ara bulduğunda AF4 bölümüne sinemanın ismini yaz.
 
Katılım
31 Ocak 2012
Mesajlar
2,430
Excel Vers. ve Dili
Excel 2010 , Türkçe
Altın Üyelik Bitiş Tarihi
24.01.2019
Asıl teşekkür etmesi gereken benim. Destek istiyorum bir kaç gün sonra yazıyorum (elimde olmayan nedenlerden dolayı) yine de aynı öz veriyle yanıtlıyorsunuz.

Örneğin şu formülü yorumlayabilirmiyiz

=EĞER($U$2="";"";KAYDIR(Data!$B$3;KAÇINCI($U$2;sinema;0);KAÇINCI($W4;ara;0)-1))

Benim yorumum: (böyle yazdım ama yorumlayamadım ) :)
selam,
yukarıdaki formül : U2 hücresi BOŞ ise BOŞ yazılacak değilse hücre kaydırma ile gelinecek hücrede hangi değer varsa onu yazacak demektir.

KAYDIR(Data!$B$3;KAÇINCI($U$2;sinema;0);KAÇINCI($W4;ara;0)-1)

ifadesine bakıldığında KAYDIR fonksiyonunun yazılımı
KAYDIR(başlangıç_hücresi;kaydırılacak_satır_adedi;kaydırılacak_sütun_adedi;satırların_sayısı;sütunların_sayısı) şeklindedir.
Örnek verirsek
KAYDIR(A1;1;2;5;3) yazdığımızda
A1 1 satır aşağıya inecek ve A2 olacak.
A2 2 sütun sağa kayacak ve C2 olacak...
C2 hücresi nden başlayacağız ve 5 satırı kaplayacak alanı bulacağız. Bu bize C2:C6 aralığını verecek. Şimdi bunu da 3 sütun genişletirsek C2 : E6 aralığını bulacağız.

KAYDIR(Data!$B$3;KAÇINCI($U$2;sinema;0);KAÇINCI($W4;ara;0)-1)

formülümüze baktığımızda ise

KAÇINCI($U$2;sinema;0) : kaydırılacak_satır_adedi ve
KAÇINCI($W4;ara;0)-1 : kaydırılacak_sütun_adedi ni ifade etmektedir. Genişlikler yazılmadığına göre bulunacak adres TEK bir hücre adresi olacaktır.

sinema ve ara ad tanımlaması yapılmış alanlardır.. Bunlara Formüller > ad Yöneticisinden bakabilirsiniz...

sinemaya bakalım :
=KAYDIR(Data!$C$3;1;;sv-SATIR(Data!$C$3);1)
burada, sv de ad tanımlamasıdır. sv için ise kullanılana formül

=MAK(EĞERHATA(KAÇINCI("zzzzz";Data!$C:$C);SATIR(Data!$C$3)+1);EĞERHATA(KAÇINCI(9,9999E+307;Data!$C:$C);SATIR(Data!$C$3)+1))

kısaca , C sütununda en son dolu satırın (en son verinin bulunduğu satırın) satır numarasını bulmak için yazıldı.Bu aad tanımlamalarının amacı listenin dinamik olmasını sağlamaktır. yani listeye veri girişleri yaptığınızda formüllerde revizyona ihtiyaç olmadan kullanılan alanı ad tanımlaması ile formüle ederek formüllerin içerisinde kullanmak..

sinema ad tanımlaması için kullanılan formül ile de Sinemaların ilk başlangıç veri satırından son verinin bulunduğu satıra kadar ki olan bulunmaktadır.

Örnek dokumana baktığımızda

sv : 12 olmakta. Yani C sütununda 12. satırda son veri bulunmakta..
sinema için ise C3 hücresinden 1 satır aşağıya in , olur C4 , satır genişliğimiz ise sv-satır(C3) = 12 - 3 = 9 , sütun genişliğ 1 olduğuna göre hep C kolonundayız. Bu durumda C4 den başla ve 9 satırlık alanı bul demek olacak. Yani C4 : C12 işte sinema alanı bu.

ara alanı zaten B3 :W3 olarak ad tanımlanmış...
KAÇINCI($U$2;sinema;0) = KAÇINCI($U$2;C4 : C12;0) olacak ve U2 de yazan C4 :C12 aralığında kaçıncı sıradadır demektir.

Yine örnek verelim :
U2 : Adana olsun.. W4 ise CM
U2 (yani Adana) sinemada (yani C4 :C12 aralığında) 3. sıradadır.
W4 (yani CM) ara da (yani B3 : W3 aralığında) 5. sıradadır.

KAYDIR(Data!$B$3;KAÇINCI($U$2;sinema;0);KAÇINCI($W4;ara;0)-1) =KAYDIR(Data!$B$3;3;5-1) olacaktır. Bu da bize B3 3 satır inecek ve 4 sütun gidecek demek olup , F6 hücresini verecektir. Sonuçta F6 hücresinde ne yazıyorsa o formülün sonucu olacaktır..

Dilimin döndüğünce formülün açıklaması bu şekilde...

İkinci soruya bakalım...

AF2 Hücresinde ki bölge seçildiğinde N sütununda 0'dan büyük değerleri ara bulduğunda AF4 bölümüne sinemanın ismini yaz.
Burada TEK bir değerden bahsedilmemekte. Yani "N sütununda 0'dan büyük değerleri " arayacağımıza göre Tek sonuç değil Liste elde edilmesi amaçlanmakta.. Bunun için de ya yardımcı bir sütun kullanılıp koşula uyanlar tek tek saydırılır ve sonra saydırılanlar İNDİS ,KAYDIR gibi arama başvuru fonksiyonları ile listelenir. Ya da yardımcı kolon kullanılmadan DİZİ formülü ile elde edilir..

Bak : Örnek....
 

Ekli dosyalar

Son düzenleme:

Bwtunc

Altın Üye
Katılım
28 Kasım 2008
Mesajlar
156
Excel Vers. ve Dili
değişken
Altın Üyelik Bitiş Tarihi
15-08-2026
Ben bu emek için diyecek söz bulamıyorum. Can-ı gönülden teşekkür edebilirim sadece. Yazdıklarınızı şu an üstün körü okudum mesai bitimi olduğu için kafam basmadı ama hafta sonu canlı kanlı deneyip ve anlatımınıza göre örnekler yapıp formüllerin mantığını iyice anlamaya çalışacağım.

Tekrar tekrar teşekkürler.
 
Katılım
31 Ocak 2012
Mesajlar
2,430
Excel Vers. ve Dili
Excel 2010 , Türkçe
Altın Üyelik Bitiş Tarihi
24.01.2019
rica ediyorum..
kolay gelsin..
 
Üst