我有以下代码:
Dim RR As Range
RR = Sheet90.Range("AA25:AA46")
For i = 1 To ComboBox1.ListCount
'Remove an item from the ListBox.
ComboBox1.RemoveItem 0
Next i
Dim R As Range
For Each R In RR.Cells
If Len(R.Value) > 0 Then
Sheet90.ComboBox1.AddItem (R.Value)
End If
Next R
显然,它不起作用。
我正在尝试使用已定义数组的非空白值填充组合框。
Excel VBA 不认可我的方法,它的错误信息也没有什么帮助。
它说,
Run-time error '91'
Object variable or With block variable not set
我认为这是某种词汇范围问题,但对于我的生活,我无法理解它。一切都包含在一个私有 SUB 中,奇怪的是,当我刚刚运行时:
RR = Sheet90.Range("AA25:AA46")
For i = 1 To ComboBox1.ListCount
'Remove an item from the ListBox.
ComboBox1.RemoveItem 0
Next i
它清除了盒子。
如果我Dim RR As Range
,一切都会崩溃。
我已经很久没有写过 vba 了,所以我可能会犯一些简单的错误,我非常感谢任何指导。
谢谢!