Доброго времени суток. Вопрос к спецам по VBA. Имеется два выпадающих списка, одни в ячейке, созданный с помощью "Проверка данных" другой элемент ActiveX поле со списком. Оба используют один и тот же диапазон. Но так как список разросся до неимоверных размеров, выбирать в нем стало не совсем удобно, точнее совсем неудобно. Есть ли возможность не отображать в выпадающем списке скрытые строки диапазона? Т.е. чтобы в комбобокс попадали только те данные из диапазона, которые в данный момент не скрыты. Или как эту задачу можно решить по-другому?
Я просто далекий от VBA поэтому и непонятно. Выпадающий список делал на основе "Приемов", а про комбобокс тоже на форуме вычитал и себе сделал, там хоть список подлиннее. Но что-то глобальное, тем более связанное с VBA у меня мозгов не хватает. Вот и обратился к гуру.
Добрый день профессионалы и любители Excel. Никак не удается победить. У меня никак не получается прикрутить макрос, который любезно предоставил Юрий М к своему файлу. Он не хочет никак работать и к тому же выдает ошибку. Что не так? Может я конечно не так все объяснил чего бы мне хотелось. Попробую еще раз. Есть таблица клиентов, они фильтруются по районам срезами. И мне бы хотелось, чтобы в комбобоксе отображались только те клиенты, которые отфильтрованы срезами согласно району. Файл для наглядности прилагаю.
К сожалению пересоздать файл в 2010 не получается. Так как срезы не создаются. А суть заключалась в том что если профильтровать срезом, то макрос выдает ошибку Run-time error "91": Object variable or With block variable not set и подсвечивает строку
Private Sub Worksheet_Activate()
Dim LastRow As Long, i As Long
With Sheets("Клиенты").Range("Таблица1")
Me.ComboBox5.Clear
For i = 1 To .Rows.Count
If .Rows(i).Hidden = False Then Me.ComboBox5.AddItem .Cells(i, 1)
Next
End With
Me.ComboBox5.DropDown
End Sub
Извиняюсь, что так долго отписывался. Все варианты теперь работают со срезами. А то из большого списка клиентов, в комбобоксе было неудобно искать. Такую фичу можно и в Приемы с выпадающими списками. Очень удобно. Спасибо Юрий М, V, Михаил С. Еще один вопрос по теме. Возможно ли посадить макрос на какое-нибудь другое событие не на активацию листа. Так как удобнее если срез находится на листе с комбобоксом. В моем случае срез скопирован на страницу с комбобоксом. И при выборе в нем, все равно приходится переключится на другой лист, а потом обратно чтоб сработал макрос. Это не совсем удобно. На какое событие можно повесить макрос, чтобы он срабатывал без переключения листов. Заранее благодарен.