2015-08-13 244 views
0

我正在做什麼看起來像一個簡單的動態範圍。然而,即時得到以下錯誤:Excel VBA - 動態範圍obj參考

「錯誤:範圍類的Set方法失敗」 VBA犯規像dropdownRange OBJ &罰球上的下面的代碼的第二最後一行中的上述錯誤。我正在使用此範圍用於列表下方的驗證下拉列表。

Dim mainTab As Object 'Tab 'main' 
Dim tranTypeSize As Integer 'Length of entries for transaction type 
Dim dropdownRange As Range 'Dynamic range for dropdown 
Set mainTab = Sheets("Main") 

With Sheets("Misc") 
    tranTypeSize = .Cells(Rows.Count, 1).End(xlUp).Row 
    Set dropdownRange = .Range("A1:A" & tranTypeSize) 
    dropdownRange.Select 
End With 
+0

tranTypeSize返回什麼值 – Sorceri

+0

@Sorceri tranTypeSize在一個整數和輸出= 4 – Kayote

+1

我剛剛測試了這個(excel 2010),它工作正常,將數據添加到列A中名爲Misc的表中。我唯一能看到的那會導致問題是tranTypeSize。 – Sorceri

回答

1

我假設你的意思是選擇範圍類的方法失敗。如果是這樣,問題是Sheet("Misc")未處於活動狀態。

要修復它,請將.Select作爲With塊的第一行。

+0

你可能是對的,你可以考慮一下。謝謝 – Kayote