NamedRange.AdvancedFilter(XlFilterAction, Object, Object, Object) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Filtert oder kopiert Daten aus einer Liste auf Grundlage eines Kriterienbereichs.
public object AdvancedFilter (Microsoft.Office.Interop.Excel.XlFilterAction Action, object CriteriaRange, object CopyToRange, object Unique);
abstract member AdvancedFilter : Microsoft.Office.Interop.Excel.XlFilterAction * obj * obj * obj -> obj
Public Function AdvancedFilter (Action As XlFilterAction, Optional CriteriaRange As Object, Optional CopyToRange As Object, Optional Unique As Object) As Object
Parameter
- Action
- XlFilterAction
Kann einer der folgenden XlFilterAction Werte sein: xlFilterCopyxlFilterInPlace
- CriteriaRange
- Object
Der Kriterienbereich. Wenn dieses Argument weggelassen wird, werden keine Kriterien verwendet.
- CopyToRange
- Object
Der Zielbereich für die kopierten Zeilen, wenn Action
ist xlFilterCopy. Andernfalls wird dieses Argument ignoriert.
- Unique
- 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
.
Gibt zurück
Beispiele
Im folgenden Codebeispiel werden ganzzahlige Werte im Zellbereich von A1 bis A5 festgelegt und dann die AdvancedFilter -Methode verwendet, um die Werte zu filtern und in den Zellbereich ab B1 zu kopieren.
Dieses Beispiel gilt für eine Anpassung auf Dokumentebene.
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);
}
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
Hinweise
Wenn es sich bei der Anfangsauswahl um eine einzelne Zelle handelt, wird der aktuelle Bereich dieser Zelle verwendet.
Optionale Parameter
Informationen zu optionalen Parametern finden Sie unter Optionale Parameter in Office-Projektmappen.