Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Filtert oder kopiert Daten aus einer Liste auf Grundlage eines Kriterienbereichs.
Namespace: Microsoft.Office.Tools.Excel
Assembly: Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)
Syntax
'Declaration
Function AdvancedFilter ( _
Action As XlFilterAction, _
CriteriaRange As Object, _
CopyToRange As Object, _
Unique As Object _
) As Object
Object AdvancedFilter(
XlFilterAction Action,
Object CriteriaRange,
Object CopyToRange,
Object Unique
)
Parameter
- Action
Typ: Microsoft.Office.Interop.Excel.XlFilterAction
Kann einer der folgenden XlFilterAction-Werte sein:
xlFilterCopy
xlFilterInPlace
- CriteriaRange
Typ: System.Object
Der Kriterienbereich.Wenn dieses Argument weggelassen wird, werden keine Kriterien verwendet.
- CopyToRange
Typ: System.Object
Der Zielbereich für die kopierten Zeilen, wenn Action den Wert xlFilterCopy hat.Andernfalls wird dieses Argument ignoriert.
- Unique
Typ: System.Object
true , um nur eindeutige Datensätze (d. h. ohne Duplikate) zu filtern, oder false, um alle Datensätze zu filtern, die mit den Kriterien übereinstimmen.Der Standardwert ist false.
Rückgabewert
Typ: System.Object
Hinweise
Wenn die ursprüngliche Auswahl eine einzelne Zelle umfasst, wird der aktuelle Bereich dieser Zelle verwendet.
Optionale Parameter
Informationen zu optionalen Parametern finden Sie unter Optionale Parameter in Office-Lösungen.
Beispiele
Im folgenden Codebeispiel werden im Bereich der Zellen A1 bis A5 ganzzahlige Werte festgelegt. Anschließend werden diese Werte mithilfe der AdvancedFilter-Methode gefiltert und in den Zellbereich kopiert, der mit B1 beginnt.
Dieses Beispiel bezieht sich auf eine Anpassung auf Dokumentebene.
Private Sub ActivateAdvancedFilter()
Dim namedRange1 As Microsoft.Office.Tools.Excel.NamedRange _
= Me.Controls.AddNamedRange(Me.Range("A1", "A5"), _
"namedRange1")
Me.Range("A1").Value2 = 10
Me.Range("A2").Value2 = 10
Me.Range("A3").Value2 = 20
Me.Range("A4").Value2 = 10
Me.Range("A5").Value2 = 30
namedRange1.AdvancedFilter(Excel.XlFilterAction.xlFilterCopy, , _
Me.Range("B1"), True)
End Sub
private void ActivateAdvancedFilter()
{
Microsoft.Office.Tools.Excel.NamedRange namedRange1 =
this.Controls.AddNamedRange(this.Range["A1", "A5"],
"namedRange1");
this.Range["A1"].Value2 = 10;
this.Range["A2"].Value2 = 10;
this.Range["A3"].Value2 = 20;
this.Range["A4"].Value2 = 10;
this.Range["A5"].Value2 = 30;
namedRange1.AdvancedFilter(Excel.XlFilterAction.xlFilterCopy,
this.Range["B1"], true);
}
.NET Framework-Sicherheit
- Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code.