【发布时间】:2015-12-09 21:23:17
【问题描述】:
我在 Excel 2010 中工作,它是 VB 编辑器。我有一个带有 6 个组合框的表单,当我初始化表单时,所有 6 个组合框都需要发生同样的事情。目前我必须为各种组合框编写相同的代码行,如下所示。
Private Sub Form_Initialize()
Dim Table As ListObject
Set Table = ThisWorkBook.Worksheets("Sheet1").ListObjects("Table1")
Dim Rows As Integer
Rows = Table.ListRows.Count
Dim i As Integer
With Me.ComboBox_1
.Clear
.Value = Empty
For i = 1 to Rows
.AddItem Table.DataBodyRange(i, 1)
Next i
End With
With Me.ComboBox_2
.Clear
.Value = Empty
for i = 1 to Rows
.AddItem Table.DataBodyRange(i, 1)
Next i
End With
'This repeats for another 4 comboboxes (ComboBox_3, ComboBox_4,
'ComboBox_5 and ComboBox_6)
End Sub
一遍又一遍地编写相同的代码变得非常烦人,当我想更改组合框的过程并且还必须更新其他 5 个组合框时变得特别烦人。
是否可以为每个组合框编写循环的单个代码?
【问题讨论】:
标签: forms excel loops excel-2010 vba