如何从Excel中的vba函数返回数组?
我想从一个vba函数返回一个未知大小的数组。 我对vba有一点经验。
我google了这个问题,发现这个页面: 从VBA用户定义函数返回数组 。
它给出了一个返回数组的函数的例子:
Function Test() As Variant Dim V() As Variant Dim N As Long Dim R As Long Dim C As Long ReDim V(1 To 3, 1 To 4) For R = 1 To 3 For C = 1 To 4 N = N + 1 V(R, C) = N Next C Next R Test = V End Function
所以我input了Alt+F11
,创build了一个新的模块并进入了这个function。 然后,在我的工作簿中,我创build了一个新工作表,在单元格中键入=Test()
,然后Ctrl+Shift+Enter
,并在单个单元格中显示1。
我究竟做错了什么? 根据现场,这应该是输出
一个3行4列的数组,其中包含从1到12的整数。
第一个高亮度光圈A1到D3 。 然后input:
=Test()
作为一个数组公式 :
数组公式必须使用Ctrl + Shift + Enterinput,而不仅仅是Enter键。