如何从Excel udf返回数组
本文关键字:返回 数组 udf Excel | 更新日期: 2023-09-27 18:01:45
我想从我的Excel UDF返回一个2d数组,但它似乎只返回第一个元素:
public object[,] Get2DArray()
{
object [,] a = new object[2, 2];
a[0,0] = 0;
a[0,1] = 1;
a[1,0] = 2;
a[1,1] = 3;
return a;
}
其中调用看起来像:
=Get2DArray()
我做错了什么?
编辑:数组的大小可能会随时改变,所以我不想指定结果将填充的范围的大小。
因为它是一个二维数组,数组的内容不能分配给单个单元格。
从您的示例中,您将返回一个2x2数组-选择一个范围(它是精确的大小)并将公式写入选择的第一个单元格。
例如,假设你选择A1到B2,按F2,在单元格A1中键入公式(当选择是活动的),然后你应该能够看到值写入B1, A2, B2以及。
我知道返回值数组可以是动态的。我不知道该怎么处理。但是,您可以在VBA中完成此操作,而不是使用udf。