• Foruma hoş geldin 👋 Ziyaretçi

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Çözüldü Değişken Filtrelemeyi Otomatik olarak Nasıl Yapabiliriz?

Bu sorun verilen destek sayesinde çözüme ulaştırılmıştır.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

driver13

Yeni Üye
Kullanıcı Bilgileri
Katılım
4 Ocak 2024
Mesajlar
19
Aldığı beğeni
2
Excel Versiyonu
Office 2016 TR
Konuyu Başlatan
Hepinize Selamlar,

Yapmak istediğim filtreleme biraz farklı olacak ama excel ile yapmak mümkün mü onu da bilmiyorum,
farklı çözümlerle denedim ama istediğim sonuca hiç ulaşamadım.

Ekteki resimdeki gibi, E4:AB4 satırından başlayarak giden (orijinal dosyada BO5:CH5 arası 20 sütun, CK5:CL5 arası 2 sütun, CS5:CT5 arası 2 sütun bulunmakta) farklı rakamların bulunduğu yaklaşık 20bin satır veri var.

E2:AB2 satırına (orijinal dosyada BO1:CH1 arası 20 sütun, CK1:CL1 arası 2 sütun, CS1:CT1 arası 2 sütun bulunmakta)filtrelenmesi istenilen değerler yazıldığında, herhangi bir "ara-bul" gibi bir buton yada sıradan bir "bul" yazısına tıklandığında;

Excelin ilk filtrelemeye E4 sütunundan başlayarak AB4 sütununa gelmesini, fakat her sütun için E2 deki değerin kendisi, 1 eksiğini ve 1 fazlasını filtrelemesini (örnek L2 sütununda aranan değer 8 olduğu için excel L sütununda 7, 8, 9 u filtrelemeli, Z2 de aranan değer 0 olduğu için sadece 0 ve 1 i filtrelemeli), eğer bu şart hücrelerden birinde sağlanmıyorsa, bu sütunda filtreleme yapmadan yani bu sütunu es geçip diğer sütunlarda aynı işlemi tekrar ederek sonuç vermesi gerek.

Aynı zamanda bu filtrelemeyi formül, makro vb ile çözmek mümkün ise, telefonlarımızdan da yine excel üzerinden veri girişi yapıldığından, uygulanacak çözümün mobil excel de de çalışması gerekiyor. Biraz karışık gibi ama umarım excel ile yapılabilcek birşeydir.

Yardımlarınız için şimdiden çok teşekkürler.
 

Ekli dosyalar

  • excel.jpg
    excel.jpg
    198.3 KB · Gösterim: 16
Çözüm
Büyük olasılıkla hafta aralarında boş zaman bulamayacağım.
O nedenle de gece oturup ekteki dosyayı yaptım. İncelersiniz....

Resim olarak şöyle... Anladığım şekilde yaptım....
R113.png

1 - Her şey Sayfa1 de. Tüm işlemler bu sayfada.

2 - Fazlaca veri olsun diye 2000. satıra kadar veri var. Ve şu haliyle bile 496 KB.

3 - Diğer dosyalarda olduğu gibi, BG1 hücresine Satır No yazın. BS1 : CX1 aralığına , BG1 de yazılan satırdaki veriler formülle gelecektir. Eğer BG1 BOŞ bırakırsanız ya da Metin ifade yazarsanız, Veri Tablosunun en son satırındaki veriler gelecektir.
Not : Veri girişleri yaparken, yavaşlamaları önlemek için bu BG1 hücresine küçük bir sayı yazın. Eğer boş bırakırsanız ve de BS kolonuna bir sayı yazarsanız, veri...
Büyük olasılıkla hafta aralarında boş zaman bulamayacağım.
O nedenle de gece oturup ekteki dosyayı yaptım. İncelersiniz....

Resim olarak şöyle... Anladığım şekilde yaptım....
R113.png

1 - Her şey Sayfa1 de. Tüm işlemler bu sayfada.

2 - Fazlaca veri olsun diye 2000. satıra kadar veri var. Ve şu haliyle bile 496 KB.

3 - Diğer dosyalarda olduğu gibi, BG1 hücresine Satır No yazın. BS1 : CX1 aralığına , BG1 de yazılan satırdaki veriler formülle gelecektir. Eğer BG1 BOŞ bırakırsanız ya da Metin ifade yazarsanız, Veri Tablosunun en son satırındaki veriler gelecektir.
Not : Veri girişleri yaparken, yavaşlamaları önlemek için bu BG1 hücresine küçük bir sayı yazın. Eğer boş bırakırsanız ve de BS kolonuna bir sayı yazarsanız, veri girdikçe 1. satıra veriyi getirmek için formül çalışacaktır. Yani bir yavaşlama nedeni olacaktır.

4 - Veri tablosunda, koşulları sağlayan hücreler koşullu biçimlendirme ile renklendirildi.

5 - Her satırda, değerlendirilecek 7 aralık var. Bu aralıkların her birinin değerlendirilmesi DA : DG kolonunda formüllerle yapılmakta. Daha doğrusu, biraz performans kazanmak için, 7 adet ad tanımlaması yapıldı ve bu tanımlanan adlar bu DA : DG kolonlarında kullanılarak hesaplama yapıldı.

6 - Alt satırlara yeni veri girişi yaptığınızdan sonra, DA : DG kolonlarındaki ilgili satırlara formülleri kopyalarsınız.
Not : Önce veri girişlerini yapın. Önce formülleri kopyalarsanız, her veri girdiğinizde ilgili satır için hesaplama yapacak veri girişlerinizde yavaşlama olabilecektir.

7 - Hesaplamalarda, ilgili aralıklarda kaç hücrenin koşulu sağladığı hesaplatıldı.

  • Dediğiniz filtreleme işlemini bu DA : DG kolonlarında yaparsınız.
  • Örneğin, DA4 hücresindeki Filtre tuşuna basarsanız açılacak menüden 0, 1, 2, 3 ve 4 değerlerinden istediklerinizi seçip filtreleme işlemini uygulayabilirsiniz.
  • Filtreleme işlemi yaptığınızda, sadece koşulları sağlayan satırlar görünecek şekilde filtreleme olacaktır.
  • Artık Veri tablosundaki değerleri inceleyebilir, size uygun olan En YAKIN eşleşmeye karar verebilirsiniz.
 

Ekli dosyalar

  • test2.xlsx
    496.7 KB · Gösterim: 3
Çözüm
Yapılabilir. Dosyanızı ekleyin. Mümkünse bir örnek çözüm belirleyin. Mobilde çalışacağından emin değilim
 
Son düzenleme:
Merhabalar, asıl dosyayı ekleme şansım yok, örnek çözüm çok aradım ama hep doğrudan filtreleme var, ileri seviyedekiler de beni aşıyor.
 
Asıl dosyanıza benzer bir dosya kısıtlı sayıda satır ile ekleyin
 
merhabalar
kontrol edermisiniz
 

Ekli dosyalar

  • excel.xlsx
    29.3 KB · Gösterim: 5
İlginiz için çok teşekkür ederim, dosyanın benzeri ekteki gibidir.
 

Ekli dosyalar

  • excel.xlsx
    10.6 KB · Gösterim: 3
merhabalar
kontrol edermisiniz
Merhaba, yardımınız için çok teşekkür ederim, verdiğiniz dosyadaki mantığı anlayamadım,

4 üncü satırın 12.ci satır ile eşleştiğini nasıl anlayacağız? Çünkü yaklaşık 20bin satır veri var.

Sadece h sütununa filtre uygulayıp mı arama yapmalıyız? H12 değeri 12 iken aranan 4.cü satıra aynı formülü verince değeri 0 çıkıyor.
 
sorunuzdan anladığım kadarı ile
*4ncü satırda sabit bir değer var
*6 ncı ve sonraki satırlar içerisinde (4ncü satıra en yakın satırı bulmaya çalışıyor)
bunun için
4ncü satır ile formülü uyguladığımız satır arasındaki farkı alıp 4 ncü satır ile topla çarpıyor en düşük rakam 4ncü satıra en yakın rakamdır
 
sorunuzdan anladığım kadarı ile
*4ncü satırda sabit bir değer var
*6 ncı ve sonraki satırlar içerisinde (4ncü satıra en yakın satırı bulmaya çalışıyor)
bunun için
4ncü satır ile formülü uyguladığımız satır arasındaki farkı alıp 4 ncü satır ile topla çarpıyor en düşük rakam 4ncü satıra en yakın rakamdır
Aslında mantık doğru ama formülü 20bin satıra uygulayınca, aranan tüm satırı birbiri ile çarparak filtre yapınca alakasız sonuçlar bulmakta, burdaki en önemli nokta her hücre kendine özel, k sütünu ile p sütünunu kıyaslamamalı, manuel olarak k sütünunu nasıl filtreliyorsak her sütun kendi içinde filtrelenmeli. Tüm satırın toplamlarıni yada çarpimlarını alarak maalesef filtreleme doğru çıkmıyor.

J8*k8=8 ederken, o8*p8=8 istenen bu değil, j4 hucresindeki deki değeri sadece j sütununda kendisi, 1 eksiği ve 1 fazlası olarak bulmalı ve bu diğer sütunlar için de geçerli.
 
örneğin
önce D sütunununda en yakın değeri bulacak
sonra ikinci filtreleme yapılacak Filtrelemeyi E sütununa uygulacak
sonra üçüncü filtreleme yapılacak Filtrelemeyi F sütununa uygulacak şeklindemi devam edecek
 
örneğin
önce D sütunununda en yakın değeri bulacak
sonra ikinci filtreleme yapılacak Filtrelemeyi E sütununa uygulacak
sonra üçüncü filtreleme yapılacak Filtrelemeyi F sütununa uygulacak şeklindemi devam edecek
Aynen bu şekilde her hücreyi sadece kendi bulunduğu sütunda manuel filtreler gibi, sırasıyla kendinden sonraki sağdaki hücrelere uygulayacak, kendisini 1 eksiğini ve 1 fazlasını arayacak, kendi sütununda değeri bulamazsa o sütunda filtreleme yapmayacak, kendinden sonrakiyle devam edecek.
 
örneğin D sütunun ( +1-0-1 ) koşulunu sağlamıyor ancak diğer sütunlarda e-f-g ...... sütunlarında ( +1-0-1 ) şartı sağlıyorsa
filtreleme dışımı kalması gerek
yoksa aynı satırda en fazla kaç tanesi koşulu sağlıyor onumu bulmaya çalışıyoruz
 
örneğin D sütunun ( +1-0-1 ) koşulunu sağlamıyor ancak diğer sütunlarda e-f-g ...... sütunlarında ( +1-0-1 ) şartı sağlıyorsa
filtreleme dışımı kalması gerek
yoksa aynı satırda en fazla kaç tanesi koşulu sağlıyor onumu bulmaya çalışıyo
 
En fazla yada eksik diye bakmayacak hocam, eğer D sütununda koşul sağlanmıyorsa bir sonraki sütuna geçecek, manuel filtreleme yaptığınızı düşünün, D de aranan değer yok E ye bakıyoruz onda yok F ye bakıyoruz,

Yani kaç sütun eşleşme yakalarsa o kâr, 24 sütundan hepsi de eşleşebilir (+1 0 -1 şeklinde), yarısıda yada sadece 1 sütun eşleşebilir, eğer hiçbir eşleşme yoksa herhangi bir sonuç vermemeli.
 
Yani aranan d1 hücresini atıyorum d15000 satırda yakaladı, ama 1.ci satırdaki diğer 23 hücrede eşleşme yok, yine filtreleme yapmalı, 24 hücreden 1 tane bile eşleşme varsa görmek istiyoruz.
 
anladım
ben şu öğrenmek istemiştim açıkcası örneğin 2 satırı düşünelim
ilk sütun D sütunu uyum sağladı ancak sonraki sütunlar uyum sağlamaması durumu ve ikinci durum ise
ikinci sütun D sütunu uyumsuz ancak sonraki sütunlar uyum sağlaması durumunda
ilk koşulu sağlayan filtelenmiş diğeri filtre dışı kalmış oluyor
o yüzden aynı satırdaki uyum sayımı önemli diye
not: aynı satırdaki uyum sayısına göre formül ile örneği ektedir ancak istediğiniz sanırım makro ile daha prtik çözülür bende malesef makro bilmiyorum )
 

Ekli dosyalar

  • excel (1).xlsx
    11 KB · Gösterim: 2
anladım
ben şu öğrenmek istemiştim açıkcası örneğin 2 satırı düşünelim
ilk sütun D sütunu uyum sağladı ancak sonraki sütunlar uyum sağlamaması durumu ve ikinci durum ise
ikinci sütun D sütunu uyumsuz ancak sonraki sütunlar uyum sağlaması durumunda
ilk koşulu sağlayan filtelenmiş diğeri filtre dışı kalmış oluyor
o yüzden aynı satırdaki uyum sayımı önemli diye
not: aynı satırdaki uyum sayısına göre formül ile örneği ektedir ancak istediğiniz sanırım makro ile daha prtik çözülür bende malesef makro bilmiyorum )
Hocam işte bu şekilde farklı hücreleri birbiri ile çarpıp sayı oluşturduğu için aslında elmalarla armutları çarpıyor gibi oluyor, onun içinde alakasız sonuçlar çıkıyor. Yinede yardımlarınız için çok teşekkür ederim emeğinize sağlık, bu konuyu makro bölümüne taşımam gerekecek galiba,
 
Dosyayı eklemediniz. Sayılar ne gibi problem çıkarıyor anlamadım. Deneyin
 

Ekli dosyalar

  • excel (1).xlsm
    24.9 KB · Gösterim: 2
20.000 satır gibi yüksek satır seviyelerinde bir dokuman için bu tip çözümleri aramak için ideal çözüm makro ile çözüm olacaktır.
Benim makro bilgim ise buna yetmeyecektir.
Söylemem gerekir ki, 20.000 satırlık veri için formüllerle beraber yüksek hacimli bir dosya oluşacaktır. Belki formüllerde hafif çaplı olsa da kasılmalar olabilecek ve yavaş çalışabilecektir. Denemek gerek...

Excel2016 için Formülle çözüm isterseniz eğer, bir çözüm önerisi olarak,

R104.png

Öncelikle,
BN kolonunda, koşulları sağlayanların adetlerinin sayıldığı bir yardımcı kolon kullanıldı.
Formül ise şöyle
Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
formül, aşağıya doğru kopyalanarak, veri adedi kadar satıra kopyalanır.

En Yakın değerler olarak, BN kolonunda maksimum değere sahip olanlar değerlendirmeye alınacaksa, BM4 hücresinde maxi değer hesaplandı. Koşullu biçimlendirme ile koşulları sağlayan satırlar biçimlendirildi.

Koşulları sağlayanlar ise, Sayfa2 de yazıldı.

R105.png

Burada satır numaralarının bulunması için,
Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.

Formül 100 satıra kopyalandı. İhtiyaç halinde daha da kopyalanarak çoğaltılabilir.
Formülde, dinamik alan kullanıldı. 20000 satır değil, daha fazla satır da olabilir.

B4 hücresinden itibaren ise, koşulları sağlayan satırlara ait değerler listelendi.
Formül ise,
Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
olup, ilgili alanlar için sağa ve aşağıya doğru 100 satır olarak kopyalandı.

Örnek dosya ektedir. İncelersiniz... 200.ncü satıra kadar veriler mevcut...
 

Ekli dosyalar

  • TestSay_1.xlsx
    79.5 KB · Gösterim: 2
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Konuyu okuyanlar

Geri
Üst