У меня проблема с моим VBA-скриптом в Excel.В основном я создаю кнопки, которые при нажатии создают набор из двух дополнительных комбинированных списков на одном листе.Эту кнопку можно нажимать непрерывно, чтобы добавлять новые комбинированные списки.
Эти недавно созданные комбинированные списки будут вести себя следующим образом:
- Созданный 2 комбинированный список
- Combobox1 загрузит некоторый список вКонтрольный лист
- Когда выбран элемент в Combobox1, Combobox2 загружает список элементов, которые будут добавлены в Combobox2
Код для добавления кнопки выглядит следующим образом
Sub Add_Criteria()
Dim controlNum As Integer
Dim name1 As String
Dim name2 As String
Dim oOle1 As OLEObject
Dim oOle2 As OLEObject
Dim uniqueString As String
Dim cb1 As Object
controlNum = Sheets("Controls").Range("A16").Value
'adding Control
Set oOle1 = Sheets("System").OLEObjects _
.Add(ClassType:="Forms.ComboBox.1", Left:=10, _
Top:=75 + (controlNum * 20), Width:=100, Height:=18)
Set oOle2 = Sheets("System").OLEObjects _
.Add(ClassType:="Forms.ComboBox.1", Left:=120, _
Top:=75 + (controlNum * 20), Width:=100, Height:=18)
'adding properties
oOle1.Name = "Criteria" & controlNum * 2 - 1
oOle2.Name = "Criteria" & controlNum * 2
'adding control var
Sheets("Controls").Range("A16").Value = controlNum + 1
With oOle1.Object
.List = Sheets("Controls").Range("A5:A13").Value
End With
End Sub
Вопрос в том, что я не могу обнаружить события на нем.Мне нужно изменить значение, показанное во втором комбинированном окне, созданном при изменении значения в комбинированном окне 1.Я пытался использовать ниже ссылку, и я до сих пор не могу.Может кто-нибудь подсказать мне, как это сделать
Справка (Об этой проблеме уже несколько дней):
http://www.dbforums.com/microsoft-excel/1641165-detecting-click-event-dynamically-created-controls.html (Это для пользовательской формы, я не знаю, почему яне может повторить это в Листе)