Excel VBA:为什么我的Range变量无论设置为什么都不返回什么?

时间:2018-10-24 15:52:24

标签: excel vba excel-vba

我正在尝试在工作表激活时使用“总览”工作表中C列中具有可变行数的公司名称列表填充组合框。

这是我的代码:

Private Sub Worksheet_Activate()
Dim namerange As Range
Dim lastrow As Integer

Set wk1 = ThisWorkbook.Worksheets("Financials")
Set wk2 = ThisWorkbook.Worksheets("FinancialData")
Set Ov = ThisWorkbook.Worksheets("Overview")

'Define range of company names
With Ov
lastrow = .Range("C" & .Rows.Count).End(xlUp).Row
Set namerange = .Range(Ov.Cells(6, 3), .Cells(lastrow, 3))
End With

'Add Portfolio names to combobox
With wk1.ComboBox1
.List = namerange
End With
End Sub

我尝试将namerange手动设置为要填充框的实际范围,但是无论我尝试将其设置为什么,它都不会返回任何内容,并且.List会引发错误。

我对VBA的了解非常有限,因此我感觉这里缺少明显的东西。我很困惑,因为我在其他地方使用了类似的代码而没有出现问题。

0 个答案:

没有答案