VBA使用的数组是函数的返回值

时间:2014-11-14 15:35:45

标签: arrays vba return-value

所以我有一个名为“mergeSort”的函数,我将其用作帮助函数,我想使用它返回的数组,但我找不到你会怎么做。我试过这个:

Dim result(9) As Integer
result = mergeSort(numbers(), 9)

它给了我一个编译错误:

  

无法分配给数组。

任何有关使用mergeSort的返回数据的建议都将受到赞赏。这是mergeSort函数的签名:

Function mergeSort(numbers() As Integer, sz As Integer) As Integer()

1 个答案:

答案 0 :(得分:3)

要将一个数组分配给另一个数组(即mergeSortresult的结果),请确保赋值左侧的数组可调整大小并且数组的类型匹配。

Dim result As Variant 
result = mergeSort(numbers(), 9)

有关详细信息,请参阅MSDN Can't assign to an array