我希望宏从每个表中的每个表中筛选所有失败的结果(每个表有一个表(,并使用列"中的日期按升序排序;我";。
以下是宏现在所做的
和
以下是我希望宏执行的操作
有人能帮忙吗?
这是我的代码:
Sub Formatting
Dim sht As Worksheet
For Each sht In Sheets
If sht.Name <> "Original" Then
sht.Range("J1").AutoFilter 10, "=FAIL"
sht.Range("A1").CurrentRegion.Sort Key1:=sht.Columns("I"), Order1:=xlAscending, Header:=xlYes
End If
Next sht
End Sub
这段代码应该可以随心所欲。在尝试之前,请查看两列地址。
Sub Formatting()
Dim Sht As Worksheet
Dim Tbl As ListObject
For Each Sht In Worksheets
If Sht.Name <> "Original" Then
Set Tbl = Sht.ListObjects(1)
With Tbl.Sort.SortFields
.Clear
.Add Key:= Tbl.DataBodyRange.Columns(3), _
SortOn:=xlSortOnValues, _
Order:=xlDescending, _
DataOption:=xlSortNormal
End With
With Tbl.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Tbl.DataBodyRange.AutoFilter 9, "=FAIL"
End If
Next Sht
End Sub
代码假定表从第1列(即A列(开始。Tbl.DataBodyRange.Columns(3)
指定表中的第3列。如果您的表从A列开始,那么T列将是20,并且我的代码中的3必须替换为20。类似地,只有当表的第一列是A.时,Tbl.DataBodyRange.AutoFilter 9, "=FAIL"
才指定列I