Sub FilterToAnotherSheet2()
Dim FilterRange As Range, Criteria As Range, TargetRange As Range
Dim CurrentData As Range, AF_Criteria As Range
'Clear old data first
Sheets("Sheet3").Cells.ClearContents
'Set Range names
On Error Resume Next
ActiveWorkbook.Names("CurrentData").Delete 'Delete old Name
Sheets("Sheet1").Range("B1").CurrentRegion.Name = "CurrentData" 'ReName the range
ActiveWorkbook.Names("AF_Criteria").Delete 'Delete old Name
Sheets("Sheet2").Range("B1").CurrentRegion.Name = "AF_Criteria" 'ReName the range
'Assign variables
Set AF_Criteria = Sheets("Sheet2").Range("B1").CurrentRegion '"Set" variable to use it later
Set FilterRange = Sheets("Sheet1").Range("CurrentData")
Set Criteria = AF_Criteria
Set TargetRange = Sheets("Sheet3").Range("A1")
'Run Advanced Filter
FilterRange.AdvancedFilter Action:=xlFilterCopy, _
CopyToRange:=TargetRange, CriteriaRange:=Criteria
Sheets("Sheet3").Select
End Sub