Please I have this function, which is part of code, it replaces my old way of filtering, I want to use it as a standalone code for filtering in excel in place of my old filtering code which can be found here <https://stackoverflow.com/q/79257700/10667244> I want to be able to use it in any active sheet just like I used the old one. By just pressing a shortcut like ctrl + w and it works on that sheet without returning any value whatsoever, or confirming sheet name and all that. Please if there's a way this can be done, I'd greatly appreciate. Function FilterX(ws As Worksheet) As Long Dim rng As Range, dict, c Dim lastrow As Long, n As Long Set dict = CreateObject("Scripting.Dictionary") ' configure filter column, tolerance With dict ' .Add "L" .Add "M", 0 ' +/- 0 ' .Add "N", .Add "O", 1 ' +/- 1 ' .Add "P", ' .Add "Q", .Add "R", 2 ' .Add "S", ' .Add "T", .Add "U", 1 ' .Add "V", .Add "W", 1 ' .Add "X", ' .Add "Y", .Add "Z", 2 End With With ws ' remove filter If .FilterMode = True Then .ShowAllData ' apply fliter lastrow = .UsedRange.Row + .UsedRange.Rows.Count - 1 If lastrow < 3 Then FilterX = 0 Exit Function End If Set rng = .Range("A1:AZ" & lastrow) 'Debug.Print ws.Name, rng.Address ' apply filter to columns M, O, R, U, W, Z For Each c In dict.keys n = Cells(1, c).Column ' column number ' dict(c) is tolerance +/- on rows 2 value rng.AutoFilter Field:=n, Criteria1:=">=" & (.Cells(2, n) - dict(c)), _ Operator:=xlAnd, Criteria2:="<=" & (.Cells(2, c) + dict(c)) Next ' return count On Error Resume Next 'skips error code when no cells are found FilterX = .Range("A3:A" & lastrow).SpecialCells(xlCellTypeVisible).Count End With End Function