VBA Получить значения из функции фильтра в Excel 2007

При использовании функции «Фильтр» в меню «Издание» в Excel 2007 в правой нижней части ячеек заголовка отображаются маленькие стрелки. При щелчке на одном списке каждого значения из всплывающего окна с возможностью выбора их.

Пример фильтра

Как вы можете получить значения thoses и зацикливать их с помощью VBA?

Я пробовал это:

Dim Filter As Range For Each Filter In Range(Cells(2, 1), Cells(2, 1).End(xlDown)).SpecialCells(xlCellTypeVisible).Cells MsgBox (Filter.value) Next Filter 

Но он не работает (он проходит через все ячейки столбца). Может быть, это потому, что стрелка не нажата при запуске макроса. Я нашел этот цикл For Each в сообщении о Excel 2002.

[РЕДАКТИРОВАТЬ]

Следующее – это не то решение, которое я ищу, так как для выполнения требуется гораздо больше времени, чем собственный метод Excel, но это приемлемое решение.

 Dim values As New Collection Dim RowCount As Long RowCount = Cells(Rows.Count, "A").End(xlUp).Row Dim IsUnique As Boolean For i = 2 To RowCount IsUnique = True For Each value In values If value = Range("A" & i).value Then IsUnique = False End If Next value If IsUnique Then values.Add Range("A" & i).value End If Next i 

Поиск возвращает объект Range, который представляет первую ячейку, в которой найдена эта информация.

Вы можете использовать методы FindNext и FindPrevious для повторения поиска

Этот пример находит все ячейки в диапазоне A1: A500 на листе, который содержит значение 2 и изменяет его на 5.

 With Worksheets(1).Range("a1:a500") Set c = .Find(2, lookin:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do c.Value = 5 Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With 
Interesting Posts

Excel Lookup Colum 2 и процент отображения на основе букв

Как сохранить / скопировать встроенное изображение из Excel в Word

jXLS 2.3 – добавить слушателя для обновления стиля ячейки в зависимости от содержимого ячейки?

Что не так с этим циклом «До конца» в Excel?

Соответствующее значение Cell для строки, затем направляя значение в столбец строки

функции массива: как суммировать по диапазону дат?

График таблицы Excel – одинаковый цвет и условная запись для тех же имен

Запись данных в файлы excel, MATLAB

определить массив с использованием двух отдельных столбцов

Как выбрать конкретный раздел данных JSON в R?

Перемещение нескольких строк в excel в другую книгу excel

Как скопировать ряд строк из файла excel в txt

Выделить все данные на листе

Как преобразовать десятичный знак в шестнадцатеричный и разместить двоеточие в excel

добавить значение, если цикл не отображает значение в пределах диапазона

Давайте будем гением компьютера.