我有這段代碼工作,然後試圖添加一個循環,工作在幾張,我失敗了,所以試圖返回到原來的版本,現在我不能得到那個工作無論是。 我已經嘗試了幾次迭代,我可以看到在哪裏放置/結束,如果/結束,如果但現在我迷路了。 任何人都可以看到我做錯了什麼?如果塊和塊混淆
Sub Applyfilter()
Dim ws As Worksheet
Dim LastRowColA As Long
Dim sCell As Range, lstCell As Range, filterRng As Range
Dim i As Integer
Set ws = ThisWorkbook.Sheets("OPT 1 Total")
With ws
Set sCell = .Cells.Find(What:="WFE", LookAt:=xlWhole)
If Not sCell Is Nothing Then
Set lstCell = .Cells(.Rows.Count, sCell.Column).End(xlUp)
If lstCell.Row > 1 Then
'Debug.Print sCell, lstCell
End With
Range("A1").Select
Selection.End(xlToRight).Select ' select all cols from A to last populated
Selection.AutoFilter
ActiveSheet.AutoFilter.Sort.SortFields.Clear
ActiveSheet.AutoFilter.Sort.SortFields.Add Key:= _
Range(sCell, lstCell), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption _
:=xlSortNormal
With ActiveSheet.AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End If
End If
Set filterRng = Range("A2").CurrentRegion
i = Application.WorksheetFunction.Match("WFE", Range("A1:AZ1"), 0)
'Set filter to only look for WFE greater than 0.5
filterRng.AutoFilter Field:=i, Criteria1:=">=0.5" _
, Operator:=xlAnd
End If
End Sub
你的問題非常含糊......什麼具體不工作? – 2014-03-28 10:29:16
對於初學者來說,你的'End If'不合適。 –