Condividi tramite


Metodo NamedRange.AdvancedFilter

Filtra o copia dati da un elenco basato su un intervallo di criteri.

Spazio dei nomi:  Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)

Sintassi

'Dichiarazione
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
)

Parametri

  • CriteriaRange
    Tipo: System.Object
    Intervallo di criteri.Se questo argomento viene omesso, non vi sono criteri.
  • CopyToRange
    Tipo: System.Object
    Intervallo di destinazione per le righe copiate se il valore di Action è xlFilterCopy.In caso contrario, l'argomento verrà ignorato.
  • Unique
    Tipo: System.Object
    true per filtrare solo i record univoci; false per filtrare tutti i record che soddisfano i criteri.Il valore predefinito è false.

Valore restituito

Tipo: System.Object

Note

Se la selezione iniziale è una singola cella, verrà utilizzata l'area corrente di tale cella.

Parametri facoltativi

Per informazioni sui parametri facoltativi, vedere Parametri facoltativi nelle soluzioni Office.

Esempi

Nell'esempio di codice riportato di seguito vengono impostati interi nell'intervallo di celle da A1 a A5, viene quindi utilizzato il metodo AdvancedFilter per filtrare e copiare tali valori nell'intervallo di celle a partire dalla cella B1.

Questo esempio è valido per una personalizzazione a livello di documento.

    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", missing].Value2 = 10;
    this.Range["A2", missing].Value2 = 10;
    this.Range["A3", missing].Value2 = 20;
    this.Range["A4", missing].Value2 = 10;
    this.Range["A5", missing].Value2 = 30;

    namedRange1.AdvancedFilter(Excel.XlFilterAction.xlFilterCopy,
        missing, this.Range["B1", missing], true);
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

NamedRange Interfaccia

Spazio dei nomi Microsoft.Office.Tools.Excel