Compartilhar via


NamedRange.AdvancedFilter(XlFilterAction, Object, Object, Object) Método

Definição

Filtra ou copia dados de uma lista com base em um intervalo de critérios.

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

Parâmetros

Action
XlFilterAction

Pode ser um dos seguintes XlFilterAction valores: xlFilterCopyxlFilterInPlace

CriteriaRange
Object

O intervalo de critérios. Se esse argumento for omitido, não haverá nenhum critério.

CopyToRange
Object

O intervalo de destino para as linhas copiadas se Action for xlFilterCopy. Caso contrário, esse argumento será ignorado.

Unique
Object

true para filtrar somente registros exclusivos, false para filtrar todos os registros que atendem aos critérios. O valor padrão é false.

Retornos

Exemplos

O exemplo de código a seguir define valores inteiros no intervalo de células de A1 a A5 e usa o AdvancedFilter método para filtrar e copiar os valores para o intervalo de células começando em B1.

Este exemplo destina-se a uma personalização no nível de documento.

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

Comentários

Se a seleção inicial for uma única célula, a região atual dessa célula será usada.

Parâmetros Opcionais

Para obter informações sobre parâmetros opcionais, consulte Parâmetros opcionais em soluções do Office.

Aplica-se a