我有很多麻煩,只需使用已知長度的數組作爲輸入參數傳遞給VBA子/功能。我在其他答案中嘗試了一些修復/解決方法,但出於某種原因或其他原因,它們都不起作用。申報陣列輸入參數
我仍然無法得到它的工作,這裏是我的實際代碼的例子:
Sub toDo()
ReDim thisArray(1 To 4, 1 To 10): k = 1
For i = 1 To 4
For j = 1 To 10
thisArray(i, j) = k
k = k + 1
Next: Next
pasteArray(Ubound(thisArray,1), Ubound(thisArray,2),2,2,thisArray)
End Sub
Public Sub pasteArray(x As Integer, y As Integer, _
locX As Integer, locY As Integer, _
ParamArray myArray() As Variant)
ReDim myArray(1 To x, 1 To y) As Double
Range(Cells(locX, locY), Cells(x + locX - 1, y + locY - 1)) = myArray
End Sub
我只是想過去thisArray()細胞(2,2),但我現在得到編譯錯誤:語法錯誤,在我的toDo子行調用pasteArray子。
我也得到一個編譯錯誤:期待=,在同一條線上。我不知道爲什麼它不應該返回任何東西。
我們需要一些更多的信息 - 什麼是你想用'useArray'辦?或者,你通常問你怎麼了'useArray'子使用數組('someArray')從'mainToDo()'子? – BruceWayne
我已經修改了提交的代碼一點,我已經包括了一個例子子,我一直在努力執行。到目前爲止,我一直在通過不做任何工作來獲得我的代碼。不過,由於我會這樣做,所以我想放棄這種解決方法,並將它打包成一個很好的子文件。 = D謝謝 –