NamedRange.AdvancedFilter (Método)

Filtra o copia los datos de una lista basada en un rango de criterios.

Espacio de nombres:  Microsoft.Office.Tools.Excel
Ensamblado:  Microsoft.Office.Tools.Excel (en Microsoft.Office.Tools.Excel.dll)

Sintaxis

'Declaración
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
)

Parámetros

  • CriteriaRange
    Tipo: System.Object
    Rango de criterios.Si se omite este argumento, no hay ningún criterio.
  • CopyToRange
    Tipo: System.Object
    El rango de destino para las filas copiadas si Action es xlFilterCopy.De lo contrario, se omite este argumento.
  • Unique
    Tipo: System.Object
    Es true para filtrar solamente registros únicos; es false para filtrar todos los registros que cumplan los criterios.El valor predeterminado es false.

Valor devuelto

Tipo: System.Object

Comentarios

Si la selección inicial es una celda única, se utiliza la región actual de dicha celda.

Parámetros opcionales

Para obtener información sobre parámetros opcionales, vea Parámetros opcionales en las soluciones de Office.

Ejemplos

En el ejemplo de código siguiente se establecen los valores enteros del rango de celdas comprendido entre A1 y A5 y, a continuación, se usa el método AdvancedFilter para filtrar y copiar los valores del rango de celdas que empiecen en B1.

Se trata de un ejemplo para una personalización en el nivel del 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);
}

Seguridad de .NET Framework

Vea también

Referencia

NamedRange Interfaz

Microsoft.Office.Tools.Excel (Espacio de nombres)