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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.02.2010, 00:14   #1
segail
Форумчанин
 
Регистрация: 13.06.2009
Сообщений: 691
По умолчанию Выделение в раскрывающемся списке.

Здравствуйте.
Подскажите как сделать?
Значения в ComboBox1 загружаются при Initialize формы, одно из этих значений находится в ячейки Z1 (или ячейка пуста). При выполнении открытие раскрывающегося списка необходимо выделить то значение, которое будет указано в ячейки Z1 (то есть по совпадению текстов ComboBox1 и ячейки Z1), что бы можно было определить какое значение на данный момент находится в ячейки Z1.
Дополнение.
Выделялось или фокусировалось (синим цветом).
Изображения
Тип файла: jpg spisok.JPG (20.2 Кб, 46 просмотров)
segail вне форума Ответить с цитированием
Старый 11.02.2010, 11:51   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Я очень рад предоставленной мне возможности в очередной раз самостоятельно создать для Вас пример файла с формой.

Я просто обожаю тратить время на создание файлов с формами, особенно когда для решения задачи достаточно написать всего пару строк кода.

Проверяйте: http://excelvba.ru/XL_Files/Sample__...__13-51-34.zip
EducatedFool вне форума Ответить с цитированием
Старый 11.02.2010, 12:20   #3
segail
Форумчанин
 
Регистрация: 13.06.2009
Сообщений: 691
По умолчанию

У меня немного по другому, при Initialize формы происходит заполнение списка ComboBox1
Посмотрите пример
Вложения
Тип файла: rar spisok.rar (13.4 Кб, 14 просмотров)
segail вне форума Ответить с цитированием
Старый 11.02.2010, 12:22   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

To EducatedFool:
Я рассматривал эту задачу. На сколько я понял, требуется, чтобы по событию DropButtonClick в раскрывшемся списке была выделена требуемая строка. Но при этом значение в самом ComboBox не изменялось. Решить такую задачу я не смог. А это возможно?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 11.02.2010, 12:27   #5
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Насколько я понял, требуется, чтобы по событию DropButtonClick в раскрывшемся списке была выделена требуемая строка. Но при этом значение в самом ComboBox не изменялось.
Я тоже понял, что нужно именно это. Но добиться такого я не смог, поэтому предложил только такой вариант.

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Решить такую задачу я не смог. А это возможно?
Вряд ли возможно.
Выделить синим - точно не получится (без WinAPI),
выделить пунктирной рамочкой, или пролистать список до нужного значения - может, и получится, но я не знаю, как это реализовать.
EducatedFool вне форума Ответить с цитированием
Старый 11.02.2010, 12:32   #6
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Цитата:
Вряд ли возможно.
Спасибо. А то уже подумал, что старею.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 11.02.2010, 12:38   #7
alex77755
Форумчанин
 
Аватар для alex77755
 
Регистрация: 14.02.2009
Сообщений: 753
По умолчанию

Цитата:
что бы можно было определить какое значение на данный момент находится в ячейки Z1.
вариант
Код:
Private Sub UserForm_Activate()
Dim i
i = Columns(1).Rows(65000).End(xlUp).Row
 UserForm1.ComboBox1.RowSource = "Лист1!A1:A" & i
For i = 0 To UserForm1.ComboBox1.ListCount - 1
If Лист1.Cells(1, 26).Value = UserForm1.ComboBox1.List(i) Then UserForm1.ComboBox1.ListIndex = i
Next i
End Sub
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru

Последний раз редактировалось alex77755; 11.02.2010 в 12:47. Причина: добавление установки ссылки на массив
alex77755 вне форума Ответить с цитированием
Старый 11.02.2010, 12:53   #8
segail
Форумчанин
 
Регистрация: 13.06.2009
Сообщений: 691
По умолчанию

А как быть с этим?
Код:
Private Sub UserForm_Initialize()
'Заполнение списка ComboBox1
    ComboBox1.AddItem "03"
    ComboBox1.AddItem "02"
    ComboBox1.AddItem "01"
    ComboBox1.AddItem "segail тупит"
End Sub
segail вне форума Ответить с цитированием
Старый 11.02.2010, 14:13   #9
segail
Форумчанин
 
Регистрация: 13.06.2009
Сообщений: 691
По умолчанию

Небольшой вопрос к данной теме.

Возможно ли действие:
При открытие объекта список ComboBox1 объект TextBox1.Visible=True
При закрытие объекта список ComboBox1 объект TextBox1.Visible=False
segail вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Последнее значение в списке Maruff Microsoft Office Excel 13 16.02.2017 12:43
Изменение шрифта в списке Vill Общие вопросы Delphi 1 05.12.2009 01:08
Подскажите! как сделать так что бы при выборе какого либо наименования в раскрывающемся списке в соседней xниколай Microsoft Office Excel 1 14.10.2009 17:10
Линейные Списке на Паскале MaXoN66613 Помощь студентам 2 11.06.2009 14:54
поиск IP в списке TaTT DoGG PHP 6 13.08.2008 18:53