【发布时间】:2018-01-29 15:24:36
【问题描述】:
我正在尝试使用 for 循环按当月过滤此工作簿中的每个 ws。这是它现在的位置
Sub curmonth()
Dim ws As Worksheet
On Error Resume Next
For Each ws In ThisWorkbook.Worksheets
If ws.Visible Then
' filter each worksheet by current month
Range("A:G").AutoFilter Field:=5, Operator:=xlAnd, _
Criteria1:=">" & Application.EoMonth(Now, -1), _
Criteria2:="<=" & Application.EoMonth(Now, 0)
Next ws
On Error GoTo 0
End Sub
它一直给我错误“编译错误:没有 FOR 的下一步”,这让我感到困惑,因为确实有一个 next 和一个 for。
【问题讨论】:
-
尝试输入
End If。 -
您错过了
End If声明。另外,将Range("A:G")...更改为ws.Range("A:G")... -
@RafaelMatos 有时间回答这个问题吗?