NamedRange.AdvancedFilter, méthode
Filtre ou copie des données à partir d'une liste basée sur une zone de critères.
Espace de noms : Microsoft.Office.Tools.Excel
Assembly : Microsoft.Office.Tools.Excel (dans Microsoft.Office.Tools.Excel.dll)
Syntaxe
'Déclaration
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
)
Paramètres
- Action
Type : Microsoft.Office.Interop.Excel.XlFilterAction
Il peut s'agir de l'une des valeurs XlFilterAction suivantes :
xlFilterCopy
xlFilterInPlace
- CriteriaRange
Type : System.Object
Zone de critères.Si cet argument est omis, aucun critère n'est spécifié.
- CopyToRange
Type : System.Object
Plage de destination pour les lignes copiées si Action a la valeur xlFilterCopy.Sinon, cet argument est ignoré.
- Unique
Type : System.Object
true pour filtrer seulement les enregistrements uniques ; false pour filtrer tous les enregistrements qui répondent aux critères.La valeur par défaut est false.
Valeur de retour
Type : System.Object
Notes
Si la sélection initiale est une cellule unique, la zone active de cette cellule est utilisée.
Paramètres optionnels
Pour plus d'informations sur les paramètres optionnels, consultez Paramètres optionnels dans les solutions Office.
Exemples
L'exemple de code suivant définit des valeurs entières dans la plage de cellules A1 à A5, puis utilise la méthode AdvancedFilter pour filtrer et copier les valeurs dans la plage de cellules commençant à B1.
Cet exemple illustre une personnalisation au niveau du document.
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);
}
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.