This macro will do it:
Option Explicit
Sub AutoFilterCopy()
Dim LR As Long
If Application.WorksheetFunction.Count(Range("B4:C6")) < 6 Then
MsgBox "All gray cells must have values"
Exit Sub
End If
Application.ScreenUpdating = False
Range("A11").CurrentRegion.Clear
With Sheets("Sheet1")
.Range("A1").AutoFilter
.Range("A1").AutoFilter Field:=2, Criteria1:=">=" & Range("C5"), Operator:=xlAnd, _
Criteria2:="<=" & Range("B5")
.Range("A1").AutoFilter Field:=3, Criteria1:=">=" & Range("C4"), Operator:=xlAnd, _
Criteria2:="<=" & Range("B4")
.Range("A1").AutoFilter Field:=4, Criteria1:=">=" & Range("C6"), Operator:=xlAnd, _
Criteria2:="<=" & Range("B6")
LR = .Range("A" & .Rows.Count).End(xlUp).Row
If LR > 1 Then
.Range("A1").CurrentRegion.Copy Range("A11")
Else
Range("A11") = "None Found"
End If
.AutoFilterMode = False
End With
Application.ScreenUpdating = True
End Sub
I've placed a button on your sheet for you, just click the button and it will update your list.
Bookmarks