Excel VBA按列和列单元格值筛选

我有下面的代码,并试图执行下面的操作时,它不断给出错误“命名参数未find”。

期望的行为:对于活动工作簿中的所有工作表,循环执行以下操作; 居中alignment,自动填充行,自动填充列,然后按值“Jack”对名为“分配给”的列进行sorting,然后按“date”进行过滤,最旧到最新。 具体问题:每当我到达sorting部分时出错

如果能够的话:我还想根据列名删除重复项,不仅仅是下面的部分我如何在下面这样做,这会如同将“36”改成“ID”这个名字一样简单吗?

Sub Filter_NOW() ' ' Filter Macro ' ' Declaration Dim wkSt As String Dim wkBk As Worksheet Dim temp As Variant Dim lastCol As Long Dim FilterCol As Variant Dim FilterColB As Variant wkSt = ActiveSheet.Name ' This Loops Through All Sheets For Each wkBk In ActiveWorkbook.Worksheets wkBk.Activate lastCol = wkBk.Cells(1, Columns.Count).End(xlToLeft).Column FilterCol = wkBk.Rows(1).Find("Assigned to") FilterColB = wkBk.Rows(1).Find("Date") 'This is to center align all rows wkBk.Rows.HorizontalAlignment = xlCenter ' Resize Columns wkBk.Columns.EntireColumn.AutoFit ' Resize Rows wkBk.Rows.EntireRow.AutoFit ' Filter by Column Name and Value wkBk.Range("$A:$BB").AutoFilter Field:=FilterCol, Criteria1:="JACK" ' Filter by Column Name and Value wkBk.Range("$A:$BB").AutoFilter Field:=FilterColB, SortOn:=xlSortOnValues, Order:=xlDescending ' Remove Duplicates wkBk.Range("$A$1:$AM$373").RemoveDuplicates Columns:=36, Header:= _ xlYes Next wkBk Sheets(wkSt).Select End Sub