مشاركة عبر


WorksheetBase.FilterMode الخاصية

الحصول على القيمة تشير إلى ما إذا كانت ورقة عمل هو تصفية بيانات بشكل فعال.

مساحة الاسم:  Microsoft.Office.Tools.Excel
التجميع:  Microsoft.Office.Tools.Excel.v4.0.Utilities (في Microsoft.Office.Tools.Excel.v4.0.Utilities.dll)

بناء الجملة

'إقرار
Public ReadOnly Property FilterMode As Boolean
    Get
public bool FilterMode { get; }

قيمة الخاصية

النوع: System.Boolean
trueإذا كانت ورقة عمل هو نشط بتصفية بيانات؛ وإلا،false.

ملاحظات

لتحديد ما إذا كانت تصفية هو حاليا تمكين (التي هو، سواء كانت الأسهم المنسدلة لعامل التصفية dهوplayed في ورقة عمل)، استخدم AutoFilterModeخاصية.

إلى تمكين التصفية وقم بإنشاء قائمة تم تصفيتها، استخدم AutoFilterأسلوب Rangeالكائن، أو استخدام AutoFilterأسلوب NamedRangeالكائن.

Th هو خاصية هو trueإذا كانت ورقة عمل تحتوي على lهوt التي تمت تصفيتها حيث توجد صفوف المخفية.

أمثلة

يلي تعليمات برمجية المثال، يتم إنشاء قائمة تم تصفيتها من الفواكه في Range، ثم يستخدم AutoFilterخاصية لعرض خصائص عامل تصفية القائمة. المثال ثم يطلب من مستخدم إلى إيقاف تشغيل عامل تصفية باستخدام AutoFilterModeخاصية، وأخيراً يستخدم FilterModeخاصية إلى عرض ما إذا كانت ورقة عمل تحتوي على قائمة تم تصفيتها.

Th هو المثال هو لتخصيص المستوى مستند.

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
private void ActivateAutoFilter()
{
    this.Range["A1", missing].Value2 = "Fruits";
    this.Range["A2", missing].Value2 = "Banana";
    this.Range["A3", missing].Value2 = "Apple";
    this.Range["A4", missing].Value2 = "Banana";
    this.Range["A5", missing].Value2 = "Orange";
    this.Range["A6", missing].Value2 = "Apple";
    this.Range["A7", missing].Value2 = "Orange";

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

    NamedRange1.AutoFilter(1, "Apple",
       Excel.XlAutoFilterOperator.xlAnd, missing, 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");
    }
}

أمن NET Framework.

راجع أيضًَا

المرجع

WorksheetBase الفئة

WorksheetBase الأعضاء

Microsoft.Office.Tools.Excel مساحة الاسم