VBA Autofilter yapimi ve Kriterler

Excelde filtre koydugumuz tablolarimizin belirli kriterlere gore goruntulenmesini isteyebiliriz, bunun icin yapacagimiz makrolarla kolayca halledebiliriz..

Bunun icin ornekler verecegiz ilk kodumuz autofilter`in nasil eklenebilecegi ile ilgili olsun;

With ActiveSheet

.AutoFilterMode = False

.Range(“A1:E1”).AutoFilter

End With

Ornegimizde A1 E5 araliginda bulunan tablomuzu otomatik filtre yapiyoruz.. Ama herhangi bir kriter kullanmiyoruz..

With Activesheet

.AutoFilterMode = False

.Range(“A1:E1”).AutoFilter

.Range(“A1:E1”).AutoFilter Field:=2, Criteria1:=10

End With

Bu ornegimizde ise ikinci alanimizda yani B sutununda degeri 10 olan satirlara gore filtreliyoruz..

Burada 10 olanlari sectik fakat kriter yazarken buyuktur , kucuktur, esittir gibi seceneklerde kullanabiliriz;

Criteria1:=”>=10″ (Buyuk esittir, Kucuktur isareti ile tersine cevrilebilir)

Criteria1:=”=10″ (Esittir)

Criteria1:=”<>10″ (Esit degildir anlamina gelmektedir)

Criteria1:=”<>*a*” (Icerisinde a harfi bulunan anlami gelir)

Criteria1:=”=D*” (D harfi ile baslayan anlamina gelir)

Ayrica autofilter icin operatorlerimiz var ve bunlarla kriterlerimizi cesitlendirebiliriz; oncelikle operatorlerimizi yazalim;

xlAnd default 
xlBottom10Items 
xlBottom10Percent 
xlOr 
xlTop10Items 
xlTop10Percent 

With Activesheet

.AutoFilterMode = False

.Range(“A1:E1”).AutoFilter

.Range(“A1:E1″).AutoFilter Field:=2, Criteria1:=”>=10″, _

Operator:=xlAnd, Criteria2:=”<=20″

End With

Ornegimizde xlAnd operatorumuzu kullandik ve B sutununu 10`dan buyuk 20`den kucuk seklinde filtreledik..

With Activesheet

.AutoFilterMode = False

With .Range(“A1:E1″)

.AutoFilter

.AutoFilter Field:=1, Criteria1:=”Mustafa”

.AutoFilter Field:=4, Criteria1:=”Muhammet”

End With

Ornegimizde gordugunuz gibi birden fazla alanida filtrelemek mumkun, ornegimizde A sutunu Mustafa ve D sutunu Muhammet olanlar filtrelenmis..

Ornekler arttirilabilirm isteginiz dogrultusunda konuya devam edebiliriz, kolay gelsin..

 

 

 

Yazar: mmustafaaslan

2004 yilindan itibaren ozel bir sirketin finans departmaninda calismaktadir. Kendini excel, visual basic kullaniminda gelistirmis olan yazarimiz; Meslegi geregi SAP konusunda ileri derecede bilgilidir.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir


9 + 3 =