Получение значений из списка на листе

У меня есть список с именем ListBox1 на Sheet1 книги Excel.

Каждый раз, когда пользователь выбирает один из элементов списка, мне нужно скопировать его имя в переменную с именем strLB.

Итак, если у меня есть Value1, Value2, Value3, Value4, и пользователь выбирает Value1 и Value3, мне нужно, чтобы мой strLB вышел как Value1, Value3.

Я попытался сделать это постфактумс помощью:

For i = 1 To ActiveSheet.ListBoxes("ListBox1").ListCount
    If ActiveSheet.ListBoxes("ListBox1").Selected(i) Then strLB = strLB & etc.etc.
Next i

Но это очень медленно (у меня в списке 15 тыс. значений). Вот почему мне нужно записывать выбор в реальном времени, а не в цикле, после того, как пользователь закончит ввод.

Мне также понадобится способ проверить, удалил ли пользователь что-либо из предыдущего выбора.

13
задан Community 6 November 2019 в 13:47
поделиться