WorksheetBase.FilterMode – vlastnost
Získá hodnotu, která označuje, zda listu aktivně filtrování dat.
Obor názvů: Microsoft.Office.Tools.Excel
Sestavení: Microsoft.Office.Tools.Excel.v4.0.Utilities (v Microsoft.Office.Tools.Excel.v4.0.Utilities.dll)
Syntaxe
'Deklarace
Public ReadOnly Property FilterMode As Boolean
public bool FilterMode { get; }
Hodnota vlastnosti
Typ: System.Boolean
true Pokud list je aktivně filtrování dat; jinak false.
Poznámky
Chcete-li zjistit, zda filtrování je zapnut (zda rozevírací šipky filtru jsou zobrazeny na listu), použijte AutoFilterMode vlastnost.
Pokud chcete povolit filtrování a vytvořit filtrovaný seznam, použijte metodu AutoFilter objektu Range nebo metodu AutoFilter objektu NamedRange.
Tato vlastnost je true Pokud list obsahuje filtrovaný seznam, ve kterém jsou skryté řádky.
Příklady
Následující příklad kódu vytváří filtrovaného seznamu ovoce v Rangea potom použije AutoFilter vlastnost zobrazit kritéria filtru pro seznam.Příklad poté vyzve uživatele k vypnutí filtru pomocí AutoFilterMode vlastnost a nakonec se používá FilterMode vlastnost, kterou chcete zobrazit, zda má list filtrovaného seznamu.
Tento příklad je pro přizpůsobení na úrovni dokumentu.
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"].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");
}
}
Zabezpečení rozhraní .NET Framework
- Plná důvěra přímému volajícímu. Částečně zabezpečený kód nemůže tento člen použít. Další informace naleznete v tématu Používání knihoven z částečně důvěryhodného kódu.