Размер шрифта в поле со списком

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Михаил Карпов
Сообщения: 5
Зарегистрирован: 11 окт 2006, 12:39
Откуда: C-Петербург

Если создавать форму "Поле со списком", встроенную в Excel в панели инструментов "Формы", то никак не удается изменить размер шрифта в форме.
Сама форма растягивается, а шрифт в "Поле со списком" очень мелкий и не меняется.
В свойствах формы возможностей изменить размер шрифта не видно.

Если кто знает - подскажите, пожалуйста!

Михаил
pashulka
Сообщения: 831
Зарегистрирован: 24 ноя 2004, 03:46
Контактная информация:

Посмотрите здесь, возможно, после прочтения этого топика, Вы остановите свой взор на аналогичном элементе управления с панели инструментов "Элементы управления" (конечно, если Вы не планируете разместить список на листе диаграмм)
Михаил Карпов
Сообщения: 5
Зарегистрирован: 11 окт 2006, 12:39
Откуда: C-Петербург

1. Спасибо Pashulka за совет. :!: Да у меня тот же вопрос, что и у Alexxxandr, но найти это место на форуме было бы непросто.
Много полезного я для себя почерпнул.

2. Однако решения вопроса о поле со списком в том обсуждении от 17.08.2006 не было, только обмен мнениями. :?:

3. "Поле со списком" из панели "Элементы управления", как советует Pashulka, можно запрограммировать как угодно. Согласен, это универсальный способ. Но в таблицах тогда будет макрос.

4. Так как я хотел бы решить задачу на Excel без макросов, только встроенными функциями, то хотелось бы применить "Поле со списком" из панели "Формы". А вот как здесь в "поле со списком" увеличить шрифт пока не понятно. Вопрос пока остался открытым... :idea:
pashulka
Сообщения: 831
Зарегистрирован: 24 ноя 2004, 03:46
Контактная информация:

3, 4. Вот пример с элементом управления "Поле со списком" с панели инструментов "Элементы управления", где размер шрифта был изменён вручную и нет макросов.
Михаил Карпов
Сообщения: 5
Зарегистрирован: 11 окт 2006, 12:39
Откуда: C-Петербург

Pashulka, спасибо за отличный пример.

Все рассмотрел, попробовал, как раз то что надо. :)

Буду теперь чаще заходить на форум, где много полезной информации.
начинающий
Сообщения: 3
Зарегистрирован: 14 ноя 2006, 20:45

Михаил Карпов писал(а):Pashulka, спасибо за отличный пример.

Все рассмотрел, попробовал, как раз то что надо. :)

Буду теперь чаще заходить на форум, где много полезной информации.
Не могли бы Вы привести аналогичный пример так, чтобы список полностью находился в программном коде VBA, а не на листе рабочей книги Excel'я? А то подобное "поле со списком" я создал через UserForm, впихнув туда ComboBox и там же в коде создал список. А вот привязать список к тому ComboBox'у что с панели "Элементы управления" почему-то не выходит.
pashulka
Сообщения: 831
Зарегистрирован: 24 ноя 2004, 03:46
Контактная информация:

Вот здесь можно скачать нужный пример.

P.S. При создании нового сообщения цитировать предыдущее - вовсе не обязательно.
начинающий
Сообщения: 3
Зарегистрирован: 14 ноя 2006, 20:45

Именно так я и cделал через UserForm:

Private Sub UserForm_Initialize()
ComboBox1.AddItem "Иванов"
ComboBox1.AddItem "Петров"
ComboBox1.AddItem "Сидоров"
ComboBox1.AddItem "Фёдоров"
ComboBox1.AddItem "Мышковский"
End Sub

и кнопку вынес на рабочий лист для отображения формы также как у Вас :roll:

Но мне необходимо сделать по другому: привязать этот текст без создания собственной формы, а используя только "Поле со списком" из панели "Элементы управления" в экселе. Вытащил это "Поле со списком" на экселевский рабочий лист, а сам список хочу спрятать в текст программы, но не получается. Не работает и всё :?
pashulka
Сообщения: 831
Зарегистрирован: 24 ноя 2004, 03:46
Контактная информация:

В моём примере наличествует несколько вариантов и в отличии от вышеопубликованного кода, использование метода .AddItem там напрямую связано с массивом, поэтому, всё сходство между ними заключается только в наличии этого метода. Что же касается ComboBox, который расположен в рабочем листе, то один из примеров его заполнения можно скачать здесь.
начинающий
Сообщения: 3
Зарегистрирован: 14 ноя 2006, 20:45

Большое спасибо, но уже сам сообразил исходя из Вашего предыдущего примера "Combox2". Метод array мне понравился больше, чем AddItem. Вот так все компактно вышло:

Private Sub ComboBox1_DropButtonClick()
ComboBox1.List = Array("Иванов", "Петров", "Сидоров", "Фёдоров", "Мышковский")
End Sub
Ответить