Results 1 to 4 of 4

Thread: Filter based on multiple Criteria?

  1. #1
    Active Member
    Join Date
    2000-12
    Posts
    71
    Login to Give a bone
    0

    Default Filter based on multiple Criteria?

    Is there a way that I can filter an array based on multiple criteria, something like:
    BaseArray = "A1" "B1" "C1" "D1" "E1"
    Criteria = "A" "B" "C"
    FinalArray = Filter(BaseArray, Criteria, True)
    where the result would be "A"1 "B1" "C1"

    Thanks,
    Jason Self

  2. #2
    AUGI Addict fixo's Avatar
    Join Date
    2005-05
    Location
    Pietari, Venäjä
    Posts
    1,269
    Login to Give a bone
    0

    Default Re: Filter based on multiple Criteria?

    Try something like this one

    Code:
    Sub FilterTest()
    Dim BaseArray(4) As String
    Dim Criteria(2) As String
    Dim IgnoreCase As Boolean
    Dim FinalArray As Variant
    
    IgnoreCase = True
    
    BaseArray(0) = "A1"
    BaseArray(1) = "B1"
    BaseArray(2) = "C1"
    BaseArray(3) = "D1"
    BaseArray(4) = "E1"
    
    Criteria(0) = "A"
    Criteria(1) = "B"
    Criteria(2) = "C"
    
    FinalArray = FilterStrings(BaseArray, Criteria, IgnoreCase)
    
    End Sub
    
    
    Function FilterStrings(BaseArray As Variant, Criteria As Variant, IgnoreCase As Boolean) As Variant
    Dim itm As String
    Dim citm As String
    Dim i As Integer, j As Integer, cnt As Integer
    Dim FinalArray() As Variant
    For i = LBound(BaseArray) To UBound(BaseArray)
    itm = BaseArray(i)
    For j = LBound(Criteria) To UBound(Criteria)
    citm = IIf(IgnoreCase, Criteria(j), UCase(Criteria(j)))
    If IIf(IgnoreCase, UCase(itm) Like UCase(citm & "*"), itm Like citm & "*") Then
    ReDim Preserve FinalArray(cnt)
    FinalArray(cnt) = itm
    cnt = cnt + 1
    Exit For
    End If
    Next
    Next
    FilterStrings = FinalArray
    End Function
    ~'J'~

  3. #3
    Active Member
    Join Date
    2000-12
    Posts
    71
    Login to Give a bone
    0

    Default Re: Filter based on multiple Criteria?

    That's pretty hardcore, thanks.

  4. #4
    AUGI Addict fixo's Avatar
    Join Date
    2005-05
    Location
    Pietari, Venäjä
    Posts
    1,269
    Login to Give a bone
    0

    Default Re: Filter based on multiple Criteria?

    Glad if that helps
    Cheers

    ~'J'~

Similar Threads

  1. QSelect on Multiple Criteria
    By autocad.wishlist1734 in forum AutoCAD Wish List
    Replies: 3
    Last Post: 2017-12-06, 04:55 PM
  2. Insert specific block based on user criteria
    By jimlapier in forum AutoLISP
    Replies: 1
    Last Post: 2012-02-21, 07:41 PM
  3. Replies: 1
    Last Post: 2011-12-06, 03:59 AM
  4. Filter Polylines based on elevations
    By feargt in forum AutoCAD General
    Replies: 5
    Last Post: 2009-09-21, 07:01 PM
  5. Criteria Based Design Options
    By civil3d.wishlist1941 in forum Civil 3D Wish List
    Replies: 1
    Last Post: 2007-10-08, 08:26 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •