如何dynamic引用vba对象?

有一个优秀的VBAforms,有多个下拉(超过10)。 这些下拉列表使用类似于此的代码填充:

With Me.Controls("MyComboBox") .Clear Do .AddItem MyRecordSet![MyColumn] MyRecordSet.MoveNext Loop Until MyRecordSet.EOF End With 

有没有办法来dynamic设置“MyComboBox”,“MyRecordSet”,“MyColumn”对象的值?

目标是将所有的combobox填充到一个循环中,而不是必须一遍又一遍地具有10多套相同的代码。

“MyComboBox”和“MyRecordSet”对象具有相似的名称,但不相同。

 Dim c As Control dim s() as string For Each c In Me.Controls If TypeName(c) = "ComboBox" Then ' HERE YOU COULD GET THE RECORDSET INFO FROM THE CONTROLS TAG?? ' Or using Ifs or have the name as name_prop1_prop2..... If c.Name = "Dr1" Then Else End If End If ' or ' s =split(c.name,"_") ' recordset = s(0) ' column=s(1) next c