Método NamedRange.AdvancedFilter
Filtra ou copia dados de uma lista com base em um intervalo de critérios.
Namespace: Microsoft.Office.Tools.Excel
Assembly: Microsoft.Office.Tools.Excel (em Microsoft.Office.Tools.Excel.dll)
Sintaxe
'Declaração
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
- Action
Tipo: Microsoft.Office.Interop.Excel.XlFilterAction
Pode ser uma das seguintes XlFilterAction valores:
xlFilterCopy
xlFilterInPlace
- CriteriaRange
Tipo: System.Object
O intervalo de critérios.Se esse argumento for omitido, não há nenhum critério.
- CopyToRange
Tipo: System.Object
Intervalo de destino para as linhas copiadas se Action é xlFilterCopy.Caso contrário, este argumento é ignorado.
- Unique
Tipo: System.Object
true para filtrar somente; registros exclusivos falsepara todos os registros que satisfaçam os critérios de filtro.O valor padrão é false.
Valor de retorno
Tipo: System.Object
Comentários
Se a seleção inicial for uma única célula, a região atual da célula é usada.
Optional Parameters
Para obter informações sobre os parâmetros opcionais, consulte Parâmetros opcionais em soluções do Office.
Exemplos
O exemplo de código a seguir define os 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 é para uma personalização em nível de 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);
}
Segurança do .NET Framework
- Confiança total para o chamador imediato. O membro não pode ser usado por código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiáveis.