我只是想知道如何在Excel中使用VBA添加两个2D数组。
我试图在互联网上搜索,在我看来,唯一的方法是循环每个元素。我是对的还是有更好/更快的方法?
作为一个推论问题:最好循环或复制到Range并使用PasteSpecial选项,如问题how to add arrays的答案精神一样?
答案 0 :(得分:1)
您可以尝试使用以下Worksheetfunction方法添加两个VBA变体数组:
Function ArrayAdd(A, B)
ArrayAdd = Application.Pmt(, -1, A, B)
End Function
A
和B
可以是数组,范围或值。 (https://stackoverflow.com/a/25596621/1252820)
答案 1 :(得分:0)
由于“添加数组”存在相当大的模糊性,假设每个数组仅由数字组成,并且在A1中为3x3:C3和A6:A8然后输出到J1:L3请尝试:
Sub ArraySum()
Range("J1:L3").FormulaArray = "=RC[-9]:R[2]C[-7]+R[5]C[-9]:R[7]C[-7]"
End Sub