Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
ComboBox - присвоить имена столбцов
 
Добрый день.
Как программно присвоить название колонке в ComboBox?
Что-то типа
Код
     ComboBox.Column(1).HeadText = "Колонка_1"

У меня стоит задача - считать данные с закрытой книги и заполнить ComboBox.  (Реализовано)

Но как задать имя столбцам незнаю.

Установил: ColumnCount = 3,  ColumnHeads = True

Прежде чем задать вопрос здесь, я ищу ответ на него на просторах инета))
 
.List(0,2)
 
Код
ComboBox.List(0,2) = "Колонка_2"

Изменяет значение во втором столбце первой строки списка.
Прежде чем задать вопрос здесь, я ищу ответ на него на просторах инета))
 
А Вам что нужно? Я лишь показал, как обратиться к любому элементу.
 
А не проще использовать ListBox, ComboBox с несколькими колонками как то не удобочитаемо, но возможно это дело привычки.
"Все гениальное просто, а все простое гениально!!!"
 
Мне надо, чтобы первая строка была строкой названия колонок, а не текущей списка.
Первая строка это названия колонок. Как ее записать выше в название колонок? Я считал данные в массив.  Далее прописалComboBox.List = Array
Combo.jpg (41.48 КБ)
Изменено: DDW - 7 Дек 2018 14:27:14
Прежде чем задать вопрос здесь, я ищу ответ на него на просторах инета))
 
Цитата
Как ее записать выше в название колонок?
Строка заголовков возможна, если список заполнять  из диапазона RowSource

Цитата
Nordheim написал: А не проще использовать ListBox
Там с заголовком то же самое, но данные будут на виду.
 
Сейчас я пытаюсь сам себя обмануть).
В открытой книге я прописываю в первой строчке листа название столбцов и подключаю
Код
.RowSource = 'Лист1'A2:C2

Да, заголовки появились. Далее я подключаю массив Array, который заполнил из закрытой книги.
Код
.List = Array

Вылетает ошибка

 
Прежде чем задать вопрос здесь, я ищу ответ на него на просторах инета))
 
Или RowSource, или динамический массив. Не дружат.
Я обычно размещаю сверху Label
 
Да, отключаю RowSource и все пошло. Но вернулся к исходной проблеме.
Прежде чем задать вопрос здесь, я ищу ответ на него на просторах инета))
 
Добавил картинку
 
Это как в сказке про ягоды и дудочку. Вот поэтому можно использовать ListBox, а названия столбцов Label-ми сделать
"Все гениальное просто, а все простое гениально!!!"
 
Похоже мне придется сдаться.
Как вариант - считывать данные в массив, выкладывать на Лист и подключать Combobox.
Далее остальной код...


Вот еще один ответ на мою проблему, точнее невозможность реализовать по другому.

Цитата
"Column heads only work when the RowSource property of your ComboBox is
set to a range on a worksheet. In that case the row values in the row
directly above the row source range will be used as the column head(s)."
Прежде чем задать вопрос здесь, я ищу ответ на него на просторах инета))
Страницы: 1
Читают тему (гостей: 4)
Наверх