Поделиться через


NamedRange.AdvancedFilter Метод (2007 System)

Обновлен: Ноябрь 2007

Отфильтровывает или копирует данные из списка на основании диапазона условий.

Пространство имен:  Microsoft.Office.Tools.Excel
Сборка:  Microsoft.Office.Tools.Excel.v9.0 (в Microsoft.Office.Tools.Excel.v9.0.dll)

Синтаксис

'Декларация
Public Function AdvancedFilter ( _
    Action As XlFilterAction, _
    CriteriaRange As Object, _
    CopyToRange As Object, _
    Unique As Object _
) As Object
'Применение
Dim instance As NamedRange
Dim Action As XlFilterAction
Dim CriteriaRange As Object
Dim CopyToRange As Object
Dim Unique As Object
Dim returnValue As Object

returnValue = instance.AdvancedFilter(Action, _
    CriteriaRange, CopyToRange, Unique)
public Object AdvancedFilter(
    XlFilterAction Action,
    Object CriteriaRange,
    Object CopyToRange,
    Object Unique
)

Параметры

  • CriteriaRange
    Тип: System.Object
    Диапазон условий. Если этот аргумент не указан, условия отсутствуют.
  • CopyToRange
    Тип: System.Object
    Конечный диапазон для копируемых строк, если для Action присвоено значение xlFilterCopy. В противном случае этот аргумент игнорируется.
  • Unique
    Тип: System.Object
    Значение true для фильтрации только уникальных записей; значение false для фильтрации всех записей, соответствующих условиям. Значение по умолчанию — false.

Возвращаемое значение

Тип: System.Object

Заметки

Если первоначально была выбрана отдельная ячейка, используется текущая область этой ячейки.

Необязательные параметры

Сведения о необязательных параметрах см. в разделе Общие сведения о необязательных параметрах в решениях Office.

Примеры

В следующем примере кода задаются целые значения в диапазоне ячеек от A1 до A5, после чего с помощью метода AdvancedFilter выполняется фильтрация и копирование значений в диапазон ячеек, начиная с B1.

В этом примере демонстрируется настройка уровня документа.

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);
}

Разрешения

См. также

Ссылки

NamedRange Класс

NamedRange - члены

Microsoft.Office.Tools.Excel - пространство имен