Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.06.2011, 13:18   #1
Bape}l{ka
Форумчанин
 
Аватар для Bape}l{ka
 
Регистрация: 25.05.2011
Сообщений: 249
По умолчанию перебрать все значения автофильтра

подскажите пожалуйста, вроде был какой-то способ перебрать все значения самого автофильтра (т.е. то, что у него в выпадающем списке)
или может не перебрать, а просто скопировать весь этот список?

а то у меня получается только сами отфильтрованные строки перебрать Т_Т

вот мой код:

Код:
Dim iCell As Range, iFilterRange As Range, i As Integer
i = 0
    FirstCol = Selection.Column

With ThisWorkbook.Worksheets(TableSheet_)
     If .AutoFilterMode = True And .FilterMode = True Then
        With .AutoFilter.Range.Columns(FirstCol)
             Set iFilterRange = _
                .Offset(1).Resize(.Rows.Count - 1).SpecialCells(xlVisible)
             For Each iCell In iFilterRange
                     i = i + 1
                    Worksheets(ListName_).Cells(i, 1) = iCell
                    'MsgBox iCell.Value
               Next
        End With
        .ShowAllData 'Отобразить всё - необязательно
     End If
End With
а мне надо, чтоб не было повторов и все отсортированно..
можно все это конечно вручную прописать, но нет ли какой-нибудь уже готовой операции?

Последний раз редактировалось Bape}l{ka; 28.06.2011 в 13:25.
Bape}l{ka вне форума Ответить с цитированием
Старый 28.06.2011, 13:42   #2
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

У меня готового примера под рукой нет, но я бы сделал так - диапазон разом в массив, массив перебором в словарь (или коллекцию), keys словаря разом в массив, его на сортировку. Или сразу keys на сортировку, на выходе массив, не суть...
Получаем отсортированный массив с уникальными значениями, который можно вывалить например в комбобокс - где-то буквально вчера видел...

Вот, вспомнил:
http://www.planetaexcel.ru/forum.php?thread_id=28877

Хотя там без словаря, т.к. исходные значения уникальны.
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 28.06.2011 в 13:52.
Hugo121 вне форума Ответить с цитированием
Старый 28.06.2011, 13:58   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

http://excelvba.ru/code/UniqueValues
http://excelvba.ru/code/UniqueValuesFromArray


Ссылку на макрос сортировки вам уже дали.
EducatedFool вне форума Ответить с цитированием
Старый 28.06.2011, 15:11   #4
Bape}l{ka
Форумчанин
 
Аватар для Bape}l{ka
 
Регистрация: 25.05.2011
Сообщений: 249
По умолчанию

спасибо большое за примеры))))
Bape}l{ka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перебрать все значения столбца по условию. Aleksandr Общие вопросы Delphi 5 23.06.2011 11:39
Delphi перебрать все символы из Edit AdDa Помощь студентам 2 06.06.2011 09:19
перебрать все CheckBox Aleksandr Microsoft Office Excel 21 03.03.2011 17:01
как перебрать все элементы на форме? Аlex Общие вопросы C/C++ 1 07.02.2009 03:46
перебрать все варианты перестановки строк sv_mix Помощь студентам 2 26.07.2008 17:48