Не могу добавить элемент в комбинированный список (контроль формы) в VBA Excel

У меня есть несколько ComboBox (контроль формы) на sheet1, Я хотел бы просмотреть и заполнить их. Ничего не происходит, нет ошибок или нет элементов в списке каждого ComboBox. Я использую этот код:

Sub cmbBox()
    Dim ctrl As Shape
    For Each ctrl In Sheet1.Shapes
        If ctrl.Type = msoOLEControlObject Then
            ctrl.AddItem "Done"
            ctrl.AddItem "Not Done"
        End If
    Next
End Sub

1 ответ

Решение

Вы можете напрямую перебирать DropDowns (так вызываются ComboBox для управления формой) вместо того, чтобы зацикливать все Shapes...

Option Explicit

Public Sub PopulateCombos()
    Dim dd As DropDown
    For Each dd In Sheet1.DropDowns
        dd.AddItem "Done"
        dd.AddItem "Not Done"
    Next dd
End Sub
Другие вопросы по тегам