gpt4 book ai didi

excel - 在单个自动筛选器中对多个字段进行条件自动筛选

转载 作者:行者123 更新时间:2023-12-02 11:14:59 25 4
gpt4 key购买 nike

我正在为帐户宏的报表创建一些编码,并检查是否存在多个字段上的条件自动过滤器之类的东西,即:

TSOA.Range.AutoFilter Field:=8, Criteria1:="Unpaid", Operator:=xlOr, Field:=9, Criteria2:=">" & Dbl3M

因此,我需要未付费或本月 3 个月内的条目(不互相排斥,因此真正过滤掉的条目是已付费且早于 3 个月前的条目)。因此,2015 年 2 月 28 日之后的任何条目,无论付费还是未付费,都必须包含在内(我知道这听起来很复杂)。

无论如何,如果这不起作用,我有一些解决方法,可以根据单独的条件自动过滤它们,将它们添加到单个数组中并删除重复项!我只是想知道自动过滤功能的局限性以及这是否真的可以做到。谢谢。

其工作原理的说明:

enter image description here

因此,我任意将 2015 年 4 月 14 日之前的条目设置为“付费”,过滤器按钮仅过滤上个月(5 月 2 日)剩下的 3 个月的数据,它还必须包括较早的“未付费”条目超过 3 个月前,并包括 3 个月内的“付费”条目。

以下是剩余的一些代码(如果可以帮助您理解的话):

Private Sub FilterButton2_Click()

Dim Balance As Double
Dim DblMonth As Double

With ThisWorkbook

Set TSOA = .Worksheets("SOA").ListObjects(1)
DblMonth = CLng(DateSerial(Year(Date), Month(Date), 0)) 'integer value of last month last day
Dbl3M = CLng(DateSerial(Year(Date), Month(Date) - 2, 0)) 'integer value of 3 months ago last day

If TSOA.AutoFilter.FilterMode = True Then
TSOA.AutoFilter.ShowAllData
TSOA.ListColumns(10).DataBodyRange.ClearContents
Exit Sub
Else: str3 = InputBox("Please input client initials", "Client filter")
If Application.WorksheetFunction.CountIf(.Worksheets("SOA").Range("D:D"), str3) = 0 Or str3 = "" Then
MsgBox "Client cannot be identified!", , "Error"
Exit Sub
End If
End If

**ActiveSheet.AutoFilterMode = False
TSOA.Range.AutoFilter Field:=4, Criteria1:=str3
TSOA.Range.AutoFilter Field:=8, Criteria1:="Unpaid", Operator:=xlOr, Field:=9, Criteria2:=">" & Dbl3M**

For K = 1 To TSOA.ListRows.Count

If Not TSOA.DataBodyRange.Rows(K).Hidden Then
Balance = Balance + TSOA.DataBodyRange(K, 6).Value
TSOA.DataBodyRange(K, 10).Value = Balance
End If
Next

End With
End Sub

最佳答案

我认为自动筛选适用于一列(Field:=1 或 Field:=8 等)。它可以接受多个条件,但仅限于每个字段中的值

另一种解决方案可能是使用公式(如果您可以使用临时列)

公式:=OR( B2="Unpaid", AND(B2="Paid", A2 < 4) )

.

enter image description here

我的日期:1 = 本月,2 = 上个月,等等

关于excel - 在单个自动筛选器中对多个字段进行条件自动筛选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31107195/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com