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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.05.2010, 18:07   #1
Умница++
 
Регистрация: 23.12.2008
Сообщений: 9
По умолчанию Как отфильтровать таблицу по значениям из выпадающего списка?

Хэлп ми :о)

Существует такая проблемка:

Есть таблица и где-то над таблицей создается выпадающий список со значениями одного из столбцов этой таблицы.
Теперь при выборе значения из выпадающего списка нужно чтобы произошла фильтрация в таблице по этому значению.

Помогите умные люди :о)
Умница++ вне форума Ответить с цитированием
Старый 02.05.2010, 18:19   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Вместо выпадающего списка используйте автофильтр - он как раз делает то, что вам нужно.
EducatedFool вне форума Ответить с цитированием
Старый 04.05.2010, 13:26   #3
Умница++
 
Регистрация: 23.12.2008
Сообщений: 9
По умолчанию

Спасибо, но автофильтром то это понятно, а мне нужно именно чтоб сверху был выпадающий список (как шапка) и при выборе в нем сразу фильтровалась таблица
Умница++ вне форума Ответить с цитированием
Старый 04.05.2010, 19:49   #4
aval
Пользователь
 
Регистрация: 08.06.2009
Сообщений: 68
По умолчанию

Может так устроит?
Вложения
Тип файла: rar ComboBox_Change.rar (11.5 Кб, 107 просмотров)
aval вне форума Ответить с цитированием
Старый 04.05.2010, 22:05   #5
Алексей Трошкин
Пользователь
 
Регистрация: 02.05.2010
Сообщений: 26
По умолчанию

Есть еще вариант
Вложения
Тип файла: zip Фильтр таблицы.zip (16.9 Кб, 97 просмотров)
Алексей Трошкин вне форума Ответить с цитированием
Старый 05.05.2010, 04:59   #6
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Ну, тогда "до кучи" еще вариант. Именно с выпадающим списком, без применения автофильтра, форм, элементов управления и без каких-либо циклов. Например, для столбца "E", начиная с 5-й строки, по критерию из выпадающего списка, сформированного (любым образом) в ячейке "D2".
Код:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address <> [D2].Address Then Exit Sub
    Dim x As Range, y As Range: Application.ScreenUpdating = False: Rows.Hidden = False
    Set y = Range([E5], Cells(Rows.Count, "E").End(xlUp)): Set x = y.Find(Target)
    If Not x Is Nothing Then y.ColumnDifferences(x).EntireRow.Hidden = True
End Sub
Единственное условие, что в столбце, по которому осуществляется фильтрация, должны быть значения, т.е. не результат вычисления по формуле или функции. Пример во вложении.
Вложения
Тип файла: rar DropDownFilter.rar (7.3 Кб, 87 просмотров)
Чем шире угол зрения, тем он тупее.

Последний раз редактировалось SAS888; 05.05.2010 в 05:14.
SAS888 вне форума Ответить с цитированием
Старый 05.05.2010, 13:23   #7
Умница++
 
Регистрация: 23.12.2008
Сообщений: 9
По умолчанию

Спасибо за помощь.

Последний раз редактировалось Умница++; 05.05.2010 в 13:26.
Умница++ вне форума Ответить с цитированием
Старый 05.05.2010, 13:43   #8
Умница++
 
Регистрация: 23.12.2008
Сообщений: 9
По умолчанию

SAS888
Возможно ли в код добавить ,чтобы значения выпадающего списка сравнивались с двумя столбцами таблицы (как бы получалось объединенное значение)

Просто получается так: в списке значения а 123, в 233, с 334, а в таблице:

а ! 123
в ! 233
с ! 334

Соотвественно он не может сравнить значения списка и таблицы и отфильтровать.
Умница++ вне форума Ответить с цитированием
Старый 05.05.2010, 13:50   #9
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Не совсем понятно. А откуда берутся значения в выпадающем списке? Их нельзя сразу формировать так, как нужно?
Пркрепите пример с таблицей и выпадающим списком. А также (например, на 2-м листе) того, что вы хотите получать в результате фильтрации.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 05.05.2010, 13:59   #10
Умница++
 
Регистрация: 23.12.2008
Сообщений: 9
По умолчанию

Прикрепить к сожалению не могу, данные нельзя разглашать...постараюсь объянить.

Есть названия, допустим:
1 дерево
1.1 береза
2 фрукт
3 овощ
2.1.1 сахар

Из этих названий делается выпадающий список над таблицей, получается типа заголовок.

А в таблице этому названию соотвествуют 2 столбца:
в одном номера: 1, 1.1, 2, 3 а в другом названия: дерево, береза, фрукт.
Умница++ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как исключить из выпадающего списка пустые элементы? parsn Microsoft Office Excel 7 03.12.2023 11:23
как реализовать сложный выбор из выпадающего списка? yulkas Помощь студентам 9 22.03.2010 09:54
Как настроить шрифт .Validation (выпадающего списка)) VovaKl Microsoft Office Excel 2 14.12.2009 19:39
Как увеличить длинну выпадающего списка: ДАННЫЕ-ПРОВЕРКА-СПИСОК kay Microsoft Office Excel 3 10.02.2009 12:59
C#. Как получить значение выпадающего списка? monach79 Общие вопросы .NET 1 18.12.2008 14:29