Button Excel-同时提供更多标准

Button Excel-同时提供更多标准,button,excel,autofilter,vba,Button,Excel,Autofilter,Vba,我的Excel 2010 workbork中有一个电子表格,其中包含大量数据。此页面可以按内置自动筛选进行排序。 在另一张纸上,我做了一个按钮,用于排序。 例如: Sub forsteKvartalAftaleIndgaet() ' Sheets("AMRM01").Select ActiveSheet.Range("$A$12:$P$76").AutoFilter Field:=2, Criteria1:="<01-04", _ Operator:=xl

我的Excel 2010 workbork中有一个电子表格,其中包含大量数据。此页面可以按内置自动筛选进行排序。 在另一张纸上,我做了一个按钮,用于排序。 例如:

Sub forsteKvartalAftaleIndgaet()

'
    Sheets("AMRM01").Select
    ActiveSheet.Range("$A$12:$P$76").AutoFilter Field:=2, Criteria1:="<01-04", _
        Operator:=xlAnd
    Sheets("Ark2").Select
End Sub

Sub andenKvartalAftaleIndgaet()
'

    Sheets("AMRM01").Select
    ActiveSheet.Range("$A$12:$P$76").AutoFilter Field:=2, Criteria1:=">01-04", _
        Operator:=xlAnd, Criteria2:="<01-07"
    Sheets("Ark2").Select
End Sub
Sub-forsteKvartalAftaleIndgaet()
'
图纸(“AMRM01”)。选择
ActiveSheet.Range(“$A$12:$P$76”)。自动筛选字段:=2,标准1:=“01-04”_
运算符:=xlAnd,准则2:=“01-07”_
运算符:=xlAnd,准则2:=“01-10”_

运算符:=xlAnd,准则2:=“我不太明白,但听起来你只是想同时显示第二季度和第三季度?我想你需要自己的宏来实现这一点

Sub secondAndThirdQuarter()

    Sheets("AMRM01").Select
    ActiveSheet.Range("$A$12:$P$76").AutoFilter Field:=2, Criteria1:=">01-04", _
        Operator:=xlAnd, Criteria2:="<01-10"
    Sheets("Ark2").Select

End Sub
次第二季度和第三季度()
图纸(“AMRM01”)。选择
ActiveSheet.Range(“$A$12:$P$76”)。自动筛选字段:=2,标准1:=”>01-04“_

运算符:=xlAnd,准则2:=“可能是这样的吗?所以这对双方都是正确的?i、 如果

1)您首先选择第二季度,然后它将显示第二季度,然后当您按第三季度时,它将显示第二季度和第三季度

2)首先选择第三季度,然后它将显示第三季度,然后按第二季度时,它将显示第二季度和第三季度

注意:我尚未测试代码,因此如果您有任何错误,请告诉我:)

Dim strCrt1为字符串,strCrt2为字符串,strCrt3为字符串,strCrt4为字符串
副安登克瓦塔拉夫塔莱因德盖特()
strCrt1=“>01-04”
strCrt2=“01-04”

strCrt4=“是的,这正是我想要的,但有两个不同的按钮。我不想没完没了地在不同的年份展示不同的季度:)看起来我们确实走在了正确的轨道上:)我会试着在我的工作表上测试一下,看看它是否有效。当我阅读代码时,它看起来就像我需要的。我将举一个简单的例子,因为它对我的测试来说要容易得多。非常感谢您的建议,我将在稍后报告:)它看起来像是在工作,但我很困惑:(我想做4个按钮,把一年分成4个季度。从01-01到01-04。从01-04到01-07。从01-07到01-10,最后从01-10到31-12。我试过了,但我不知道这里的句子是否正确。我用所有的方法更新了我的代码。你的解决方案很有效,但会很复杂。如果我能找到一种方法让它变为e,我会考虑的。)因为我有4个不同的按钮,这将是一个很长的如果。
Sub secondAndThirdQuarter()

    Sheets("AMRM01").Select
    ActiveSheet.Range("$A$12:$P$76").AutoFilter Field:=2, Criteria1:=">01-04", _
        Operator:=xlAnd, Criteria2:="<01-10"
    Sheets("Ark2").Select

End Sub
Dim strCrt1 As String, strCrt2 As String, strCrt3 As String, strCrt4 As String

Sub andenKvartalAftaleIndgaet()
    strCrt1 = ">01-04"
    strCrt2 = "<01-07"

    With Sheets("AMRM01")
        If strCrt4 <> "" Then
            .Range("$A$12:$P$76").AutoFilter Field:=2, _
            Criteria1:=strCrt1, Operator:=xlAnd, _
            Criteria2:=strCrt4
        Else
            .Range("$A$12:$P$76").AutoFilter Field:=2, _
            Criteria1:=strCrt1, Operator:=xlAnd, _
            Criteria2:=strCrt2
        End If
    End With
End Sub

Sub TredjeKvartalAftaleIndgaet()
    strCrt3 = ">01-04"
    strCrt4 = "<01-07"

    With Sheets("AMRM01")
        If strCrt1 <> "" Then
            .Range("$A$12:$P$76").AutoFilter Field:=2, _
            Criteria1:=strCrt1, Operator:=xlAnd, _
            Criteria2:=strCrt4
        Else
            .Range("$A$12:$P$76").AutoFilter Field:=2, _
            Criteria1:=strCrt3, Operator:=xlAnd, _
            Criteria2:=strCrt4
        End If
    End With
End Sub