chopper
chopper

Reputation: 3

Variable Multiple Criteria for Autofilter in VBA

I'm looking to use VBA autofilter to better sort my data as I work through it. I have around a 1000 rows each with a unique number and I'd like to be able to filter that data to the ID numbers I need at that moment. Basically, the autofilter code below does the job for those 5 specific entries, but is there a way of making that a more flexible?

ActiveSheet.Range("$A$13:$Y$1045").AutoFilter Field:=1, Criteria1:=Array( _
        "1776", "1870", "2029", "2051", "2086"), Operator:=xlFilterValues

I picture using something along the lines of:

ActiveSheet.Range("$A$13:$Y$1045").AutoFilter Field:=1, Criteria1:=Array( _
        TexBox2.Value, TextBox2.Value), Operator:=xlFilterValues

but no joy. I'm a bit of a newbie, so huge apologies if this is a huge waste of time. Many thanks in advance for any help!

Upvotes: 0

Views: 693

Answers (1)

MarcinSzaleniec
MarcinSzaleniec

Reputation: 2256

I think you should be little more precise:

ActiveSheet.Range("$A$13:$Y$1045").AutoFilter Field:=1, Criteria1:=Array( _
    UserForm1.TexBoxt1.Value, UserForm1.TextBox2.Value) _
    , Operator:=xlFilterValues

where UserForm1 is the name of your userform. Be sure that you did not unloaded it before running this piece of code (you may .Hide it and still have access to the controls).

Upvotes: 1

Related Questions