-2
我有一個創建並返回數組的函數:無法指定數組,自定義函數
Function test()
Dim resultArray(1 To 3, 1 To 2) As Variant
Set resultArray(1, 1) = ThisWorkbook.Worksheets("setup").Range("A1:A1000")
Set resultArray(2, 1) = ThisWorkbook.Worksheets("setup").Range("B1:B1000")
Set resultArray(3, 1) = ThisWorkbook.Worksheets("setup").Range("C1:C1000")
Set resultArray(1, 2) = ThisWorkbook.Worksheets("setup").Range("D1:D1000")
Set resultArray(2, 2) = ThisWorkbook.Worksheets("setup").Range("E1:E1000")
Set resultArray(3, 2) = ThisWorkbook.Worksheets("setup").Range("F1:F1000")
test=resultArray
End Function
Sub testTestFunction()
Dim storedRanges() As Variant 'works fine
'Dim storedRanges(1 To 3, 1 To 2) As Variant 'error on the next line
storedRanges=test()
MsgBox ("DONE")
End Sub
我嘗試初始化Dim storedRanges() As Variant
和Dim storedRanges(1 To 3, 1 To 2) As Variant
的方法,只有前者的作品。爲什麼會發生?
你的代碼甚至不應該編譯,你定義了兩次相同的變量(storedRanges) –
@Vincent G,修正了現在編譯的問題。 – Ans
好吧,鑑於它編譯,它在這裏工作。您在(3,2)大小的數組的(1,1)位置存儲對範圍的引用。 –