1
我有一個愚蠢的問題,當我創建一個函數返回一個數組時,我總是得到錯誤類型不匹配。這裏有兩個簡單的例子: 如果我不申報時,申報類型:它會被編譯,但功能結果類型不匹配錯誤,當返回一個函數中的數組時
Function aa(c As Integer)
Dim arr(10)
Dim i As Integer
Dim k As Double
For i = 0 To 10
k = i^2/c + 1
arr(i) = CStr(k)
Debug.Print k
Next i
aa = arr
End Function
後得到的錯誤,如果我聲明的類型:它不能被編譯並會得到錯誤直接
Function aa(c As Integer) as string()
Dim arr(10) as string
Dim i As Integer
Dim k As Double
For i = 0 To 10
k = i^2/c + 1
arr(i) = CStr(k)
Debug.Print k
Next i
aa = arr
End Function
非常感謝。但是,如果我想直接使用該函數,那麼如何修改它以避免類型不匹配錯誤? – yabchexu
你是什麼意思直接調用該函數?如果你想在工作表單元格中使用該功能,那麼它需要更多的工作。請參閱[此鏈接](http://www.cpearson.com/excel/returningarraysfromvba.aspx)關於從UDF返回數組。 –
非常感謝,鏈接有我想學的東西。 – yabchexu