Число колонок в списке

Программирование на Visual Basic for Applications
Евгений Д.
Обычный пользователь
Обычный пользователь
 
Сообщения: 96
Зарегистрирован: 21.09.2004 (Вт) 17:32
Откуда: Москва

Число колонок в списке

Сообщение Евгений Д. » 09.12.2005 (Пт) 17:08

Или я слепой, или ... никак не могу найти как определить число колонок в списке (List, Combo), т.к. ColumnCount определяет только число видимых в окне списка колонок, а если у меня их больше, то как узнать сколько?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 09.12.2005 (Пт) 17:15

Сам заполнял и не знаешь?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Евгений Д.
Обычный пользователь
Обычный пользователь
 
Сообщения: 96
Зарегистрирован: 21.09.2004 (Вт) 17:32
Откуда: Москва

Сообщение Евгений Д. » 09.12.2005 (Пт) 17:19

В том и дело, что до этого момента число колонок было равно числу видимых, а на это настроена подпрограмма, копирующая из одного списка в другой. Теперь же в одном из списков появились невидимые в его окне колонки, которые как раз и не копируются. Прямо дурь какая-то, почему не сделали что-то типа .Columns.Count :?:

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 09.12.2005 (Пт) 17:21

А списком не копируется? .list = .list
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Евгений Д.
Обычный пользователь
Обычный пользователь
 
Сообщения: 96
Зарегистрирован: 21.09.2004 (Вт) 17:32
Откуда: Москва

Сообщение Евгений Д. » 09.12.2005 (Пт) 17:24

Нет. Я по DoubleClick'у на первом списке перебрасываю во второй те строки, которые нужны. Целиком копировать как ра не надо. Хотя такая возможность у меня есть по MultiSelect'у и нажатии кнопки.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 09.12.2005 (Пт) 17:30

ubound(.list,2)-lbound(.list,2)+1 ?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Евгений Д.
Обычный пользователь
Обычный пользователь
 
Сообщения: 96
Зарегистрирован: 21.09.2004 (Вт) 17:32
Откуда: Москва

Сообщение Евгений Д. » 09.12.2005 (Пт) 17:36

Уже теплее! Хотя при создании списка у меня почему-то заводится 10 колонок, видны только 3, а я заполняю 5. Вариант с L/Ubound определяет 10. Конечно можно копировать все 10, но хотелось бы понять можно ли задать точное число колонок?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 09.12.2005 (Пт) 17:42

А как ты определяешь, какие нужны?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Евгений Д.
Обычный пользователь
Обычный пользователь
 
Сообщения: 96
Зарегистрирован: 21.09.2004 (Вт) 17:32
Откуда: Москва

Сообщение Евгений Д. » 09.12.2005 (Пт) 17:47

Если копирует подпрограмма, то она должна определить копируемое число колонок. Изначально же я заполняю список копируя в него массив: SomeList.List = MyArray.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 09.12.2005 (Пт) 17:55

:roll:
Как подпрограмма решает, какие из колонок копировать, раз она у тебя копирует их не все?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Евгений Д.
Обычный пользователь
Обычный пользователь
 
Сообщения: 96
Зарегистрирован: 21.09.2004 (Вт) 17:32
Откуда: Москва

Сообщение Евгений Д. » 09.12.2005 (Пт) 17:59

Как раз колонки-то она все копирует, это строки - не все. И раньше она копировала ListCount штук. А тут выяснилось, что вдобавок к ListCount могут быть еще от 0 до ??? невидимых в окне списка.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 09.12.2005 (Пт) 18:01

Вот это уже новость :roll:
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 108

    TopList