• DİKKAT

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

Yan sekmeden tarih aralığı ile kısıtlı veri çekmek mümkün mü?

  • Konbuyu başlatan Konbuyu başlatan A_day
  • Başlangıç tarihi Başlangıç tarihi
Katılım
21 Ocak 2008
Mesajlar
349
Excel Vers. ve Dili
Excel 2013 / Türkçe

Ekli dosyada basit bir örneğini oluşturduğum tablomda,
"Kayitlar" sekmesindeki tablo, "Kasa" adıyla 'dinamik ad' tanımlı.

"Ozet" sekmemde ise yapmaya çalıştığım şey şu; ay içinde avans alan kişilerin almış oldukları avansların, tarih ve tutar olarak listelenmesini istiyorum.

Tablomu bu doğrultuda bir noktaya kadar oluşturdum ama komplike formüllerde tıkandım.

Yapmaya çalıştığım ama beceremediğim 2 husus şunlar;

* Bizim maaş alma aralığımız ayın 10'undan 10'una. Yani 10 Temmuzda alacağımız maaş; 10 Haziran - 09 Temmuz aralığına ait maaş olacak. Dolayısıyla, "Ozet" sekmesine yazacağım formüller, bugün için konuşacak olursak, 9 Haziran - 7 Temmuz arasındaki avansları çekip, getirmeli. Aynı şekilde, 25 Temmuz'da ben bu tabloya baktığımda, 10 Temmuz - 25 Temmuz arasındaki avansları görmeliyim yalnızca.

** İkinci husussa, bu avans tutarları, Ali ve Selim için ayrı ayrı sütunlarda listelenmeli...
 
Öncelikle dinamik alan tanımlamanız yanlış olmuş, aşağıdaki formül daha doğru olurdu:

=DOLAYLI("Kayitlar!$B$3:$E$"&BAĞ_DEĞ_DOLU_SAY(Kayitlar!$A:$A)+1)

İkinci olarak bu işlem için Excelin Tablo özelliği ile Özet Tablo raporunu kullanabilirsiniz. Ekli dosyada bu özellikleri kullanarak istediğiniz sonucu elde ettim, inceleyiniz:

 
Yusuf bey, ilginize çok teşekkür ediyorum.

Çok alışkın olmadığım, benim için oldukça değişik fakat enteresan yöntemlerle çözmüşsünüz sorunumu.

Dosyanızı tepeden tırnağa inceleyip, çözüm yöntemlerinizi hazmetmeye, öğrenmeye ve asıl büyük dosyama uyarlamaya çalışacağım. Sağolun...
 
Bu arada eğer aynı tabloda farklı yılların verileri de olacaksa dönem hesabı karışabilir. Bu durumda "Dönem" formülünü, özet tabloda ilgili kısımları ve makro kodlarını güncellemek gerekir.
 
Merhaba,

Kayıtlar sayfasında aynı tarihte aynı kişiye ait birden fazla kayıt olma durumu var mı?
 
Korhan bey, aynı kişiye ait, aynı tarihte iki ayrı avans kaydı olma durumu yok..
 

Yusuf bey, çözümünüz gerçekten oldukça profesyonel. Yapmış olduğunuz tablonun işleyişine ve görsel dizaynına hayran olmamak elde değil. Yukarıda da yazdığım gibi, inşaallah bu dosyanızı uzun soluklu olarak irdelemek ve mantığını kavramak için zaman ayıracağım. Fakat şu haliyle benim seviyemin bayağı üstünde.

Eğer yanlış anlamazsanız, hoş görünüze sığınarak, yeni ekli dosyam için, benim anlayabileceğim, benim seviyeme uygun bir çözüm rica ediyorum.

Dosyadan da göreceğiniz gibi, dosyayı yeniden şöyle dizayn ettim;

"Avanslar" sekmesine, "Kasa" sekmesindeki tüm avans satırlarını çektim.
Bir sonraki adım olarak da bu avanslar içerisinden Ali ve Selim için verileri, bu tablonun sağ tarafına çektim.

[H3] hücresine ay başımız olan tarihi girdiğim de, [H4] hücresi otomatik olarak o ayın son gününü hesaplıyor. Böylece maaş alınacak ayın ilk günü ile son gününü belirlemiş ve zaman aralığını kısıtlamış oluyorum.

Tıkandığım ve formülünü yazmayı beceremediğim yer şu;

Ali ve Selim için çekilen veriler [H3:H4] hücrelerinde kısıtlı zaman aralıkları için listelenmeli ama benim formüllerim tamamını çekiyor. Zaman aralığı kısıtlı formül yazmayı beceremedim maalesef.
 


Ektedir ve Linktedir.

SUMIFS (EÇOKTOPLA türkçe karşılığıdır) fonksiyonu bunu yapabilirsiniz.

Ne işe yarar ?

Birden fazla kriter vererek ilgili sütundaki verileri verilen kriterlere göre toplar.
 

Ekli dosyalar

Trilenium, ilginize teşekkür ediyorum.

EÇOKTOPLA bilmediğim bir komuttu, bundan sonra kullanırım inşaallah.

Ancak ben Ali ve Selim için ayrı ayrı, 10.05.22 - 09.06.22 tarih aralığındaki avansları çekmek istiyorum, tüm avansları değil.
 

Sabah berrak zihinle uğraşınca çözdüm. Belki başkalarının da işine yarar diye çözümlü dosyayı ekledim.

İlgilerinizden dolayı herkese teşekkürler ediyorum...
 
Merhaba,

Burada önemli olan "Kayitlar" sayfanızda depolayacağınız veri sayısıdır. Kullandığınız formüller veri sayısı arttıkça performans sorunları yaratacaktır.

Eğer veri sayısı 10 binleri geçmeyecekse çok sorun olmayacaktır. Ama daha üstü bir veri depolanacaksa @YUSUF44 beyin önerisini kesinlikle değerlendirmeniz gerekecektir.

Bende formüllerle bir çözüm hazırladım. Tarih aralığı için kullandığım formülde mantık hatası varsa siz düzenlersiniz.

Harici Link (Silinebilir) ; https://dosyam.org/1rzJ/94_ikili_veri_cekme.xlsx
 

Ekli dosyalar

Sorununuz çözülmüş ancak benim önerdiğim çözüm öyle çok uçuk uygulamalar içermiyor. Aslında temelde çok basit ama kuvvetli bir excel özelliği olan "pivot tablo/özet tablo" özelliğini kullandım. Fazladan eklediğim tek şey özet tablonun her sayfa açıldığında otomatik yenilenmesi için kullanılan kodlar. Onlar da sadece kolaylık olsun diye. Onun yerine özet tablo menüsündeki Yenile düğmesine basılarak da yenileme yapılabilir.
 
Korhan bey harika bir çözüm olmuş. Bunu kullanacağım. Veri çekeceğim ana sekmede satır sayısı 2000'i geçmeyecek. Dolayısıyla performans sorunu yaşamayacağımı umuyorum. İlginize çok teşekkür ediyorum.

Yusuf bey, siz de umarım yanlış anlamazsınız beni. İnsan bilmediğinden korkar ya, sizin yönteminizi daha önce hiç kullanmadığım için eğitim videoları da izleyerek, konuyu iyice kavradıktan sonra benzer alıştırmalar yapacağım. Çünkü tasarlamış olduğunuz çözüm o kadar kullanışlı, o kadar görsel olarak mükemmel ki, er ya da geç bu yöntemleri öğreneceğim. Ufkumu açtığınız için teşekkürler ediyorum, sağolun, varolun...
 

Korhan bey, dosyanızı incelerken, tanımlı tarih aralığında, aynı gün 2 kişinin avans alması halinde formüllerin her iki sütuna, iki avansı da çekmekte olduklarını farkettim. Buna mani olmanın bi yolu var mı?...
 
Elbette var..

Aşağıdaki formülü C5 hücresine uygulayıp sağa ve aşağıya doğru sürükleyiniz.

C++:
=EĞER(EĞERSAY($B$5:$B5;$B5)>1;0;EĞERHATA(İNDİS(Kayitlar!$B$4:$E$1000;TOPLA.ÇARPIM(KAÇINCI($B5&C$3&$B$2;Kayitlar!$B$4:$B$1000&Kayitlar!$C$4:$C$1000&Kayitlar!$D$4:$D$1000;0));4);0))

Önceki mesajımda paylaştığım dosyaları bu talebinize göre revize ettim.
 
Korhan bey, sonsuz teşekkürler ediyorum, iyi ki varsınız. Tüm forum yöneticisi ve üyelerine hayırlı bayramlar...
 
Sizlere de iyi bayramlar..
 
Geri
Üst