Makale FILTER

Bu Makale Yararlı Oldu mu?

  • Evet

  • Hayır


Sonuçlar yalnızca oylamadan sonra görülebilir.
FILTER ( SourceArray, Match, [Include], [Compare] )

Bir alt tabaka (Variant) içeren değerlerin bir alt kümesini içeren bir dizi döndürür.
ArgümanAçıklama

SourceArray

Aranacak metin dizisi (1 boyutlu) (Variant / Array)

Match

Aranacak metin dizesi (String).

[Include]

Eşleşmeyi içeren veya dışlayan alt dizeleri döndürüp döndürmeyeceğini belirtmek için TRUE veya FALSE (Boolean)

[Compare]

Kullanılacak metin karşılaştırması türünü belirten bir vbCompareMethod sabiti (Integer):
-1 = vbUseCompareOption ("Option Compare" ayarını kullanır)
0 = vbBinaryCompare
1 = vbTextCompare
2 = vbDatabaseCompare (Access veritabanı kullanır)

Açıklamalar
* Bu işlev, belirli bir metin dizesiyle eşleşen tüm öğeler için bir dizi arar ve eşleşen öğelerin bir dizisini döndürür.
* Arama metninin tüm öğeyle mi, yoksa sadece bir bölümüyle mi eşleşmesi gerektiğini belirtmenin bir yolu yoktur.
* "SourceArray" içinde eşleşme eşleşmiyorsa, boş bir dizi döndürülür.
* "SourceArray" Null ise, o zaman bir hata oluşur?
* "[Include]" = True ise, alt dizeyi "eşleşmesini" içeren dizinin alt kümesi bir alt dizgi olarak döndürülür.
* "[Include]" = False ise, dizinin bir alt dizgi olarak "eşleşmesi" alt dizini içermeyen alt kümesi döndürülür.
* "[Compare]" boş bırakılırsa, daha sonra 0 kullanılır.
* Döndürülmüş olan dizi, eşleştirilen öğelerin sayısını içerecek kadar öğe içerir.
* Döndürülen dizi her zaman 1 boyutlu bir dizidir.
* Bu işlev, 1 boyutlu bir dizide belirli bir öğenin var olup olmadığını belirlemek için kullanılabilir.
* Bu seçenek, "Option Base 1" bildirip bildirmediğiniz dikkate alınmaksızın 0 tabanlı bir diziyi her zaman döndürür .
* Bu işlev boş bir dizi döndürebilir. Bu olduğunda, alt düzey 0 ve üst sınır -1'dir.

Örnek Kullanım
PHP:
Sub Dizilerde_Filtre()
    Range("D:D").ClearContents
    On Error Resume Next
    Data = WorksheetFunction.Transpose(Range("A1:A81").Value)
    Veri = Filter(Data, Range("C1").Value, True, vbTextCompare)
    Range("D1").Resize(UBound(Veri) + 1, 1).Value = WorksheetFunction.Transpose(Veri)
End Sub
PHP:
Sub ExcelTurkey()
    Dim Dizim(2) As String, SubStrings() As String
    Dizim(0) = "EyExcel"
    Dizim(1) = "Turkey"
    Dizim(2) = "Forum"
    SubStrings = Filter(Dizim, "ey", True, VBA.VbCompareMethod.vbTextCompare)
    Debug.Print VBA.Join(SubStrings, ",") 'EyExcel,Turkey"
   
    SubStrings = Filter(Dizim, "ey", True, VBA.VbCompareMethod.vbBinaryCompare)
    Debug.Print VBA.Join(SubStrings, ",")   'Turkey"
   
    SubStrings = Filter(Dizim, "ey", False, VBA.VbCompareMethod.vbTextCompare)
    Debug.Print VBA.Join(SubStrings, ",")   'Forum"
End Sub
 
Son düzenleme:
Murat OSMA

Yorumlar

Üst Alt