WorksheetBase.AutoFilter Eigenschaft

Definition

Ruft einen AutoFilter ab, der Informationen zu gefilterten Listen auf dem Arbeitsblatt bereitstellt, wenn das Filtern aktiviert ist. Ruft null ab, wenn die Filterung deaktiviert ist.

public Microsoft.Office.Interop.Excel.AutoFilter AutoFilter { get; }

Eigenschaftswert

AutoFilter

Ein AutoFilter, der Informationen zu gefilterten Listen auf dem Arbeitsblatt bereitstellt, wenn das Filtern aktiviert ist; andernfalls null.

Beispiele

Im folgenden Codebeispiel wird eine gefilterte Liste von Früchten in einer erstellt Range . Anschließend wird die-Eigenschaft verwendet, AutoFilter um die Filterkriterien für die Liste anzuzeigen. Im Beispiel wird der Benutzer dann aufgefordert, den Filter mithilfe der AutoFilterMode -Eigenschaft zu deaktivieren, und schließlich wird die-Eigenschaft verwendet, FilterMode um anzuzeigen, ob das Arbeitsblatt eine gefilterte Liste enthält.

Dieses Beispiel gilt für eine Anpassung auf Dokument Ebene.

private void ActivateAutoFilter()
{
    this.Range["A1"].Value2 = "Fruits";
    this.Range["A2"].Value2 = "Banana";
    this.Range["A3"].Value2 = "Apple";
    this.Range["A4"].Value2 = "Banana";
    this.Range["A5"].Value2 = "Orange";
    this.Range["A6"].Value2 = "Apple";
    this.Range["A7"].Value2 = "Orange";

    Microsoft.Office.Tools.Excel.NamedRange NamedRange1 =
        this.Controls.AddNamedRange(this.Range["A1", "A7"],
        "NamedRange1");

    NamedRange1.AutoFilter(1, "Apple",
       Excel.XlAutoFilterOperator.xlAnd, true);

    MessageBox.Show("The current criteria for the AutoFilter is: " +
        this.AutoFilter.Filters[1].Criteria1.ToString());

    if (this.AutoFilterMode)
    {
        if (DialogResult.Yes == MessageBox.Show("Would you like to " +
            "turn off the filter?", "Example", MessageBoxButtons.YesNo))
        {
            this.AutoFilterMode = false;
        }
    }

    if (this.FilterMode)
    {
        MessageBox.Show("The worksheet has a filtered list.");
    }
    else
    {
        MessageBox.Show("The worksheet does not have a filtered list");
    }
}
Private Sub ActivateAutoFilter()
    Me.Range("A1").Value2 = "Fruits"
    Me.Range("A2").Value2 = "Banana"
    Me.Range("A3").Value2 = "Apple"
    Me.Range("A4").Value2 = "Banana"
    Me.Range("A5").Value2 = "Orange"
    Me.Range("A6").Value2 = "Apple"
    Me.Range("A7").Value2 = "Orange"

    Dim NamedRange1 As Microsoft.Office.Tools.Excel.NamedRange = _
        Me.Controls.AddNamedRange(Me.Range("A1", "A7"), "NamedRange1")

    NamedRange1.AutoFilter(1, "Apple", Excel.XlAutoFilterOperator.xlAnd, _
        VisibleDropDown:=True)

    MsgBox("The current criteria for the AutoFilter is: " & _
        Me.AutoFilter.Filters(1).Criteria1.ToString())

    If Me.AutoFilterMode Then
        If DialogResult.Yes = MessageBox.Show("Would you like to " & _
            "turn off the filter?", "Example", MessageBoxButtons.YesNo) Then
            Me.AutoFilterMode = False
        End If
    End If

    If Me.FilterMode Then
        MsgBox("The worksheet has a filtered list.")
    Else
        MsgBox("The worksheet does not have a filtered list")
    End If
End Sub

Hinweise

Um das Filtern Programm gesteuert zu aktivieren, verwenden Sie die- AutoFilter Methode des- Range Objekts oder die- AutoFilter Methode eines- NamedRange Objekts.

Gilt für