Vba fi̇ltre işlevi nasıl kullanılır?
VBA FILTER işlevi, VBA işlevleri tablosu kategorisinde listelenir. Bunu VBA kodunda kullandığınızda, alt küme olarak belirttiğiniz dizeye dayalı olarak bir dize dizisinden dizeler döndürebilir . Basit bir ifadeyle, bir dize belirtebilir ve bu dizenin ana dizenin parçası olduğu tüm değerleri arayacaktır.
Sözdizimi
Filtre(DiziKaynağı,Eşleşme,[Dahil Et],[Karşılaştır])
Argüman
- SourceArray : Filtrelenecek dizeleri içeren dizi.
- Match : SourceArray’de filtrelemek istediğiniz dize.
- [Dahil Et] : Bu, filtrelenecek hava durumu değerinin eşleşmeyi içerip içermediğini tanımlayan bir boole değeridir [Bu isteğe bağlı bir bağımsız değişkendir ve atlanırsa, VBA varsayılan olarak TRUE olur].
- [Karşılaştır] : Diziyi filtrelerken gerçekleştirilecek karşılaştırmayı tanımlayan bir dize değeri [Bu isteğe bağlı bir bağımsız değişkendir ve atlanırsa, VBA varsayılan olarak vbBinaryCompare’i alır].
- vbBinaryCompare: ikili karşılaştırma için.
- vbTextCompare: metin karşılaştırması için.
- vbDatabaseCompare: veritabanı karşılaştırması için.
Örnek
VBA FILTER fonksiyonunun nasıl kullanılacağını pratik olarak anlamak için, onu kullanarak bir vba kodu yazdığımız aşağıdaki örneği incelemeniz gerekir:
Sub example_FILTER() Dim nameAry As Variant Dim myAry(0 To 4) As String myAry(0) = Range("A1").Value myAry(1) = Range("A2").Value myAry(2) = Range("A3").Value myAry(3) = Range("A4").Value myAry(4) = Range("A5").Value nameAry = Filter(myAry, "Sh") End Sub
Yukarıdaki kodda, içinde ‘Sh’ bulunan diziden (myAry, tanımladığımız hücrelerden değerlere sahiptir) değeri almak için FILTER kullandık ve artık ‘nameAry’, ‘Jay Sh’ ve ‘Peter’ı içeriyor Sh’ çünkü her ikisi de “Sh” içeriyor.
Yorumlar
- Sağladığınız kaynak dizisi NULL ise VBA bir hata döndürecektir.
- Filtrenin döndürdüğü dizi her zaman tek boyutlu, sıfır tabanlı bir dizi olacaktır.