Ошибка времени выполнения при получении значения из FormControl ListBox - PullRequest
2 голосов
/ 23 октября 2019

Я добавил FormControl ListBox с именем ListBox2 на лист Excel и назначил макрос RectangleRoundedCorners3_Click для фигуры. Теперь я хотел бы напечатать первый элемент списка в ячейку A1:

Sub RectangleRoundedCorners3_Click()

ActiveSheet.Range("A1").Value = ActiveSheet.ListBox1.List(0)

End Sub

Я получаю следующую ошибку:

Ошибка времени выполнения '438':

Объект не поддерживает это свойство или метод

Я не совсем понимаю, почему это происходит. Если я использую ActiveX Controls ListBox, точно такой же код работает отлично.

1 Ответ

3 голосов
/ 23 октября 2019

Попробуйте:

ActiveSheet.Range("A1").Value = Activesheet.ListBoxes("ListBox2").List(1)

Примечание. Ссылка на ActiveSheet - не лучший способ ссылки на лист. Посмотрите этот пост здесь, чтобы узнать больше об этом.

Полезный обзор FormControl ListBoxes с использованием нескольких методов можно найти на сайте Полное руководство по Excel VBA FormКонтрольные списки . - Отредактировано из-за комментария Джонаса: -)

...