我的ThisWorkbook
Public RawDataSheet As Worksheet
Public UserInputSheet As Worksheet
Private Sub Workbook_Open()
Set RawDataSheet = Sheets("Sheet3")
Set UserInputSheet = Sheets("Sheet1")
PopulateCountry
End Sub
Private Sub PopulateCountry()
LastRow = RawDataSheet.UsedRange.Rows.Count
With RawDataSheet.Range("A2:A" & LastRow)
V = .Value
End With
With CreateObject("Scripting.Dictionary")
.comparemode = 1
For Each E In V
If Not .exists(E) Then .Add E, Nothing
Next
If .Count Then UserInputSheet.cmbCountry.List = Application.Transpose(.keys)
End With
End Sub
我的想法是,我希望在我的代码中的任何地方使用两张作为全局变量,而不是一直在键入Sheets("Sheet1")
。
我的问题是我收到错误:
If .Count Then UserInputSheet.cmbCountry.List = Application.Transpose(.keys)
但这条线很好用:
If .Count Then Sheets("Sheet1").cmbCountry.List = Application.Transpose(.keys)
有人可以告诉我为什么吗?
答案 0 :(得分:0)
结束更改表格上的Name
属性,以便我可以这样参考。