如何在VBA中创build两个数组的值

我想在VBA中做两个数组的sumproduct,因为我试图避免引用工作表,直到写入时间由于其大小和复杂性。

我知道我可以使用应用程序函数来运行sumproduct定义两个范围,但仍然引用工作表,是否有只使用纯粹在代码中的数组呢?

当然,您只需调用SUMPRODUCT并将它传递给数组:(但请注意,它有点低效)

Sub testing2() Dim varr1(1 To 10) Dim varr2(1 To 10) Dim vres As Variant Dim j As Long For j = 1 To 10 varr1(j) = j varr2(j) = j * 10 Next j vres = Application.WorksheetFunction.SumProduct(varr1, varr2) End Sub