1
將範圍分配給Array非常簡單。儘管如此,我發現了VBA出乎意料的表現。我找不到答案,爲什麼會這樣,所以我希望有人能向我解釋爲什麼它不起作用。使用「With .. End With」將範圍分配給陣列
任務:指定一個範圍(從打開的工作簿)到數組
工作代碼
Dim vrtTabOEen() as Variant
Dim rngTabOEen as Range
With ThisWorkbook.Worksheets(Name_AB_Tab_Def_OEen)
Set rngTabOEen = .Range(Name_Tab_Def_OEen)
vrtTabOEen = rngTabOEen
End With
非工作代碼
Dim vrtTabOEen() as Variant
With ThisWorkbook.Worksheets(Name_AB_Tab_Def_OEen)
vrtTabOEen = .Range(Name_Tab_Def_OEen)
End With
運用非工作代碼,我會得到錯誤13:類型不匹配。
問題 爲什麼我必須創建一個數組出來之前將其目標範圍內分配給類型「範圍」的變量?
感謝羅裏,它的工作。雖然我不明白你的第一句話的開頭。 「間接水平」以及「隱性強制」我都不知道。將查找他們 – AndyP 2015-04-06 10:56:14