If Day(Date) = 1 Or Day(Date) = 3 Then Else ws.Range("B1").AutoFilter Field:=2, Criteria1:="<>*る*" End If修改為判斷當前日期是不是1號,並判斷是不是周日,如果是周日就跳過這一天放到周一運行
时间: 2024-03-03 13:53:30 浏览: 78
修改后的条件语句可以写成:
```
If Day(Date) = 1 Or (Weekday(Date) = 1 And Day(Date) = 2) Then
'如果是当月的1号或周日,则不执行任何操作
Else
'如果不是当月的1号或周日,则执行筛选操作
ws.Range("B1").AutoFilter Field:=2, Criteria1:="<>*る*"
End If
```
这个条件语句用于判断当前日期是否为当月的1号或周日。如果是,则不执行任何操作;如果不是,则执行筛选操作。其中,如果是周日,则把操作放到周一运行,即把周日当做周一执行,这里的实现方式是将周日的日期当做2号来处理。
相关问题
If Day(Date) = 1 Then Else ws.Range("B1").AutoFilter Field:=2, Criteria1:="<>*る*" End If If Weekday(Date, vbMonday) <> 1 Then '狦さぱぃ琌琍戳碞ぃ縵匡Τ砞称ㄢ?甧 ws.Range("B1").AutoFilter Field:=2, Criteria1:="<>*砞称-*", Operator:=xlAnd, Criteria2:="<>*る*" End If If Day(Date) = 1 And Weekday(Date) = vbMonday Then ws.Range("B1").AutoFilter Field:=2, Criteria1:="=*", Operator:=xlAnd, Criteria2:="=*" End If 這是什麽意思
这是一段 VBA 代码,在 Excel 中用于过滤数据。代码中主要是通过对日期的判断,来设置不同的过滤条件。
首先,如果日期是1号,则不做任何过滤;如果不是1号,则根据第二列的内容过滤掉不包含"る"的行。
其次,如果日期不是星期一,则根据第二列的内容过滤掉不包含"砞称-"和"る"的行。
最后,如果日期既是1号又是星期一,则不做任何过滤。
代码中的 ws.Range("B1") 表示要过滤的数据范围,Field:=2 表示要过滤的列为第二列,Criteria1 和 Criteria2 分别表示第一个和第二个过滤条件。Operator:=xlAnd 表示两个条件需要同时满足。
If Weekday(Date, vbMonday) <> 5 Then If Day(Date) = 3 Then ws.Range("B1").AutoFilter Field:=2, Criteria1:="<>*る*", Operator:=xlAnd, Criteria2:="<>砞称-*" Else ws.Range("B1").AutoFilter Field:=2, Criteria1:="<>*砞称-*", Operator:=xlAnd, Criteria2:="<>*る*" End If End If
这段代码会根据日期和星期几来应用自动过滤器。如果日期不是星期五,那么它将检查日期是否为3号,并根据结果应用过滤器。如果日期为3号,则应用一个过滤器,如果日期不是3号,则应用另一个过滤器。
如果您想要修改代码,使其筛选出包含“る”的数据,可以将 `Criteria1` 修改为 `"=*る*"`。如果您想要同时筛选出不包含“砞称-” 的数据,则可以将 `Criteria2` 修改为 `"<>*砞称-*"`。修改后的代码如下所示:
```
If Weekday(Date, vbMonday) <> 5 Then
If Day(Date) = 3 Then
ws.Range("B1").AutoFilter Field:=2, Criteria1:="=*る*", Operator:=xlAnd, Criteria2:="<>*砞称-*"
Else
ws.Range("B1").AutoFilter Field:=2, Criteria1:="<>*砞称-*", Operator:=xlAnd, Criteria2:="=*る*"
End If
End If
```
这将在日期不是星期五时,筛选出包含“る”但不包含“砞称-” 的数据;在日期为3号时,筛选出包含“る”且不包含“砞称-” 的数据。
阅读全文