Страница: 1 |
Вопрос: О работе с ListBox | Добавлено: 03.05.09 18:31 |
Автор вопроса: ![]() |
Уважаемый Форум,
При работе с ListBox в многоколонном формате никак не выходят два момента, в обоих случаях заполнение ListBox провожу через 2-мерный массив (пробовал и через Range xls-листа, тоже ничего не выходит). Момент 1. Вывести названия заголовков столбцов в закрепленную верхнюю строку (ColumnHeads=true, ColumnCount=10). Момент 2. Я работаю из Книги1, содержащей код (макрос). В Книге2 шесть листов (Лист1..Лист6) с одонродными многоколонными таблицами. Лист1..Лист4 выводятся на ListBox без всяких проблем, а Лист5..Лист6 не желают с сообщением: Run-time error '9': "Subscript out of range". Создается впечатление, что где-то заложено ограничение на количество открываемых в "чужой" книге листов, в "своей" открываются все. |
Ответы | Всего ответов: 4 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ICQ: 308-534-060 Вопросов: 20 Ответов: 1860 |
Web-сайт: Профиль | Цитата | #1 | Добавлено: 04.05.09 08:03 |
2. Run-time error '9': "Subscript out of range". Как правило возникает, когда пытаешься присвоить значение не существующему элементу массива или элементу коллекции. Проверь индексацию. В твоем случае ты можешь выходить за предел количества строк ListBox, их надо динамически добавлять во время работы макроса. Ограничений на количество открываемой в "чужой" книге листов нет. |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 6 Ответов: 26 |
Профиль | Цитата | #2 | Добавлено: 04.05.09 19:50 |
Я думаю, хитрость кроется не в количестве строк листа, а в самих неоткрываемых листах. Лист1 больше Листа5 раза в четыре, но Лист1 открывается, а Лист5 - нет. Прямо сейчас поменял листы местами, но те два из 6 так и не открываются. |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 6 Ответов: 26 |
Профиль | Цитата | #3 | Добавлено: 05.05.09 00:18 |
Порылся в материалах форума про Listbox, и вот что вышло.
по п.1. Постепенным искусственным наращиванием .ListCount методом .AddItem() до требуемой величины и последующим использованием .RowSource удалось-таки загнать в закрепленную верхнюю строку заголовки столбцов. по п.2. Причина отказа открытия отдельных страниц тривиальна - в ссылках на названия страниц использованы знаки тире ("-" ![]() ![]() Но пошла другая беда - с испольдованием "метода .RowSource" загружается (открывается) лбюой выбранный лист, но попытка вместо него загрузить любой другой лист программа подвисает на первом же "искусственном" .AddItem() с сообщением "Run-time error '70': Permission denied" (в отличие от "заполнения массивом" ![]() |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 6 Ответов: 26 |
Профиль | Цитата | #4 | Добавлено: 05.05.09 00:21 |
Со смайликами само получилось, я нипричем |
Страница: 1 |
|