• DİKKAT !

    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 Dosya Yükleme tamamen ücretsizdir.

Çözüldü Gelişmiş Filtre ve Joker Karaktere Göre Arama Yapma

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

yyhy

Yeni Üye
Katılım
13 Ağu 2021
Mesajlar
297
Çözümler
3
Aldığı beğeni
141
Excel V
Office 2021 TR
Konu Sahibi
Gelişmiş Filtre ve Joker Karaktere Göre Arama Yapabilir miyiz?
Daha önce aynı konu ile ilgili başlık atmıştım yalnız joker karakter yoktu. Arama yaparken kolaylık olsun diye joker karakter eklemeyi uygun gördüm acaba ne yapılabilir?
 
Konu Sahibi
Sayın MYAZICI AD sütununda arama yapacağım örneğin; MÜŞERREF 'i arıyacağım ararken şu şekilde renkli alan B3 hücresine ERRE yazıyorum ARA makrosunu çalıştırdığımda sonucu vermiyor.
Arama yaparken;
*** Başı belli olmayanı arayabilirim,
*** Sonu belli olmayanı arayabilirim,
*** Başı ve sonu belli olmayanı arayabilirim,
*** veya Kelimeyi tam yazıp arayabilirim
Kriterlerim bunlardan ibarettir.
 
VisualBasic.gif
Alternatif adında bir modüle ADO ile yapılışının küçük bir örneğini attım. Kısa sürede hazırladığım için eksikler olabilir, eksikler için şimdiden kusura bakmayın.
 
Konu Sahibi
Sayın aeGNoR örnek güzel olmuş ama joker karakterleri manuel girmek gerekiyor.
Arama yaparken;
*** Başı belli olmayanı arayabilirim,
*** Sonu belli olmayanı arayabilirim,
*** Başı ve sonu belli olmayanı arayabilirim,

*** veya Kelimeyi tam yazıp arayabilirim
Kriterlerim bunlardan ibarettir.
Eke şimdi ekleyeceğim örnek dosyada sizin joker karakter ekleyerek ADO ile aldığınız sonuca benzer bulabiliyorum.
Programa hem görsellik hem de herkesin kullanabileceği bir dosya hazırlamak istiyorum.
 
Sayın aeGNoR örnek güzel olmuş ama joker karakterleri manuel girmek gerekiyor.
Arama yaparken;
*** Başı belli olmayanı arayabilirim,
*** Sonu belli olmayanı arayabilirim,
*** Başı ve sonu belli olmayanı arayabilirim,

*** veya Kelimeyi tam yazıp arayabilirim
Kriterlerim bunlardan ibarettir.
Eke şimdi ekleyeceğim örnek dosyada sizin joker karakter ekleyerek ADO ile aldığınız sonuca benzer bulabiliyorum.
Programa hem görsellik hem de herkesin kullanabileceği bir dosya hazırlamak istiyorum.
Aslında benim yaptığım sizin sorunuza çözüm değil. Yani gelişmiş filtre kullanmak istiyorsanız benim yaptığım sadece farklı bir yöntemle de yapılabileceğini göstermek olur.

Zaten bunu bilerek alternatif adında bir modül oluşturdum ve farklı çözümü orada uyguladım.
ADO ile arama yaparak bu arama kriterlerinizi daha basit uygulayabileceğinizi göstermekti maksadım.
Kriterlerinizin ADO ile aramada çözümleri;
1. % başa getirilerek başı belli olmayan arama yapılabilir.
2. % sona getirilerek sonu belli olmayan arama yapılabilir.
3. % hem başa hem sona getirilerek başı ve sonu belli olmayan arama yapılabilir.
4. Tam arama için herhangi bir joker karakter kullanmaya gerek yok. Direkt aramanızda birebir eşleşme ile sonuca ulaşacaktır.

Bu iş çok daha geliştirilecek LIKE, IN, BETWEEN, NOT IN, NOT NULL, NULL vb. işleçlerle çok daha profesyonel aramalar bile yapılabilir fakat sizin örneğinizde bunlara bile gerek kalmıyor.

Düzeltme:
Kişisel Not:

Ado ile çözümler kolay kolay sunmuyorum, üzerinde pek fazla çalışmıyorum çünkü sorulardaki veriler ado ile çalışmaya pek uygun olmuyor. Fakat sizin sorunuzdaki veriler düzenli ve istikrarlı veriler olduğu için böyle bir yöntemin güzel olacağı kanısına vardığım için öylesine bir örnek hazırladım.
 
Bu tarz bir dosya işinize yarar mı acaba?
 
Konu Sahibi
Ekli dosyayı görüntüle 5004
Alternatif adında bir modüle ADO ile yapılışının küçük bir örneğini attım. Kısa sürede hazırladığım için eksikler olabilir, eksikler için şimdiden kusura bakmayın.
Sayın aeGNoR sizin hazırladığınız ado kodlarını kullanmak istiyorum. Ancak arama sayfasına yine butonla bitirmeyi düşünüyorum. kelimeyi yazacağım yardımcı hücreden de başı belli değil, sonu belli değil, başı ve sonu belli değil veya jokersiz ara tıklayarak
% işareti ni koymayı/koymamayı düşünüyorum.
Şu formülde çıkmaza girdim. Acaba nasıl düzeltebilirim.
EĞER(B5="başı belli değil";"%"&B4);EĞER(B5="sonu belli değil";B4&"%");EĞER(B5="başı ve sonu belli değil";"%"&B4&"%");EĞER(B5="jokersiz ara";B4)))
 
Konu Sahibi
Bu tarz bir dosya işinize yarar mı acaba?
Sayın @arschimet emek verip uğraşmışsınız çok teşekkür ederim. Ama birkaç kritere göre arama yapacağımdan dosyadaki başlıklardan sadece 5 tanesini aldım. Bu çalışma dosyam 20 civarında başlık ve 5000-6000 satır civarındadır. Tahsile, Rütbeye, Memlekete, Yaş grubuna gibi bilgileri süze girerek yapmak zor olduğundan böyle bir çalışmaya girdim. Dosyamın şu haliyle sıkıntı verecek bir durumu yok. Emeğiniz için teşekkür ederim.
 
Konu Sahibi
Aslında benim yaptığım sizin sorunuza çözüm değil. Yani gelişmiş filtre kullanmak istiyorsanız benim yaptığım sadece farklı bir yöntemle de yapılabileceğini göstermek olur.

Zaten bunu bilerek alternatif adında bir modül oluşturdum ve farklı çözümü orada uyguladım.
ADO ile arama yaparak bu arama kriterlerinizi daha basit uygulayabileceğinizi göstermekti maksadım.
Kriterlerinizin ADO ile aramada çözümleri;
1. % başa getirilerek başı belli olmayan arama yapılabilir.
2. % sona getirilerek sonu belli olmayan arama yapılabilir.
3. % hem başa hem sona getirilerek başı ve sonu belli olmayan arama yapılabilir.
4. Tam arama için herhangi bir joker karakter kullanmaya gerek yok. Direkt aramanızda birebir eşleşme ile sonuca ulaşacaktır.

Bu iş çok daha geliştirilecek LIKE, IN, BETWEEN, NOT IN, NOT NULL, NULL vb. işleçlerle çok daha profesyonel aramalar bile yapılabilir fakat sizin örneğinizde bunlara bile gerek kalmıyor.

Düzeltme:
Kişisel Not:

Ado ile çözümler kolay kolay sunmuyorum, üzerinde pek fazla çalışmıyorum çünkü sorulardaki veriler ado ile çalışmaya pek uygun olmuyor. Fakat sizin sorunuzdaki veriler düzenli ve istikrarlı veriler olduğu için böyle bir yöntemin güzel olacağı kanısına vardığım için öylesine bir örnek hazırladım.
Sayın aeGNoR sizin hazırladığınız dosya üzerinde birkaç değişiklikle herhalde bu konuyu sizin emeklerinizle neticelendireceğiz.
Şöyle ki;
Şimdi ekleyeceğim dosya içerisine de yazdım; En üstte boş bir satır, 5 ile 6. satır arasına boş bir satır ile A sütununu da boş bırakmak istiyorum. Acaba kodları buna göre düzenleyebilir misiniz?
Ayrıca arama yaptıktan sonra filtre temizle görevini görecek bir buton atanabilir mi? İşlemi gördükten sonra ana liste butonla tıkladıktan sonra gözükse çok iyi olacak.
Vakit ayırabilirseniz çok memnun olacağım teşekkürler.
 
Sayın aeGNoR sizin hazırladığınız dosya üzerinde birkaç değişiklikle herhalde bu konuyu sizin emeklerinizle neticelendireceğiz.
Şöyle ki;
Şimdi ekleyeceğim dosya içerisine de yazdım; En üstte boş bir satır, 5 ile 6. satır arasına boş bir satır ile A sütununu da boş bırakmak istiyorum. Acaba kodları buna göre düzenleyebilir misiniz?
Ayrıca arama yaptıktan sonra filtre temizle görevini görecek bir buton atanabilir mi? İşlemi gördükten sonra ana liste butonla tıkladıktan sonra gözükse çok iyi olacak.
Vakit ayırabilirseniz çok memnun olacağım teşekkürler.
A sütununu neden boş bırakmak istediğinizi anlamadım? A sütununun soluna bir sütun daha mı ekleyeceğiz yoksa a sütununda bulunan KURUM KODU değerini mi getirmesin?
 
Anladığım kadarıyla bir şeyler yaptım, istediğiniz gibi oldu mu kontrol eder misiniz?
 
Çözüm
Sayın MYAZICI AD sütununda arama yapacağım örneğin; MÜŞERREF 'i arıyacağım ararken şu şekilde renkli alan B3 hücresine ERRE yazıyorum ARA makrosunu çalıştırdığımda sonucu vermiyor.
Arama yaparken;
*** Başı belli olmayanı arayabilirim,
*** Sonu belli olmayanı arayabilirim,
*** Başı ve sonu belli olmayanı arayabilirim,
*** veya Kelimeyi tam yazıp arayabilirim
Kriterlerim bunlardan ibarettir.
Sayın yyhy eğer sonu belli değilse sonuna MÜŞ* gibi, yani MÜŞ ile başlayan,
başı belli değilse *REF gibi, yani REF ile biten,
başı ve sonu belli değilse *ERRE* gibi, yani ERRE içeren şeklin yazmalısınız.
 
Anladığım kadarıyla bir şeyler yaptım, istediğiniz gibi oldu mu kontrol eder misiniz?
Çok güzel bir uygulama olmuş. Elinize emeğinize sağlık. Aramada örneğin elif, ayşe şeklinde araya virgül veya noktalı virgül koyarak birden fazla ölçütte aratarak filtreleme yapabilirmiyiz? Bunu listenin içine tek sayfa olacak şekilde olması için nasıl bir değişikli yapmak gerekir. Tekrar çok teşekkür eder yardımlarınızı bekleriz.
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst