• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 309
  • Last Modified:

Filter Range problem in Excel

Hi Guys, I recorded a Macro for a daily process whereby I put an auto-filter on row 3.Then do End(xlDown) and copy the region. However, the Macro recorded the exact Row range and it will be variable every day so I need to adapt it.
Rows("3:3").Select
    Selection.AutoFilter
    ActiveSheet.Range("$A$3:$R$166").AutoFilter Field:=13, Criteria1:=">=1", _
        Operator:=xlOr, Criteria2:="<=-1"

Any ideas?

Justin
0
Justincut
Asked:
Justincut
1 Solution
 
MichaelBusiness AnalystCommented:
Hello Justin,

try the following:
Dim lr as long
lr = Cells(Rows.Count, "A").End(xlUp).Row

Rows("3:3").Select
    Selection.AutoFilter
    ActiveSheet.Range("$A$3:$R$" & lr).AutoFilter Field:=13, Criteria1:=">=1", _
        Operator:=xlOr, Criteria2:="<=-1"

Open in new window

where Cells(Rows.Count, "A").End(xlUp).Row finds the last row used in column A.
If needed, replace A with a column in which there's always a value in the last row.

--
Btw, you can also leave this part out:
Rows("3:3").Select
    Selection.AutoFilter


So, this works as well:
Rows("3:3").AutoFilter
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now