Страницы: 1
RSS
Работа с множественным выбором значений в ListBox VBA
 
Доброго дня!  
 
Помогите, пожалуйста, с решением неольшого вопроса.  
 
Есть UserForm с ListBox1. ListBox1 содержит 10 значений (например, фамилии сотрудников). Разрешен выбор нескольких значений (MultiSelect).  
 
Если выбрано одно значение, поместить его в ячейку листа получилось: ActiveCell.Value = ListBox1.List(ListBox1.ListIndex)  
 
Но вот никак не получается поместить в одну ячейку результат выбора нескольких значений ListBox.  
 
 
Решение думаю очень простое, но ни как не могу найти ответа на такой вроде несложный вопрос.  
 
 
Буду очень признателен за помощь.
 
Здравствуйте! Циклом перебираем строки в ListBox, если выделена - сцепить в ячейку с существующими там данными.
 
Попробуйте так, см файл
Редко но метко ...
 
Только Юрий мне сказал про Select, сразу удалось найти пример:  
http://www.planetaexcel.ru/forum.php?thread_id=12678  
For n = 1 To Me.ListBox1.ListCount  
If Me.ListBox1.selected(n) = True Then msgbox Me.ListBox1.List(n)  
Next n  
 
Спасибо!  
 
GIG_ant, тоже большое спасибо за помощь - то, что я и искал.
 
Обратите внимание что стандартно нумерация элементов в списке начинается с нуля, поэтому в таком варианте как у вас:    
For n = 1 To Me.ListBox1.ListCount  
первый элемент списка не проверяется и в конце цикла выдаст ошибку!  
Посмотрите как этот цикл реализован у меня.
Редко но метко ...
 
GIG_ant, да я именно ваш вариант и взял в работу :)
Страницы: 1
Читают тему
Наверх