2017-07-18 74 views
1

我有一个需要将多个矩阵相加在一起的项目。目前,这是通过每个迭代的while循环完成的。有没有更快的方法来使用可能内置的编程进行矩阵求和?不使用循环的和矩阵

从我的研究到目前为止,通过VBA完成的所有矩阵求和都是通过循环,我相信这不会提高运行速度。

+0

您可以展开循环,但如果您担心性能,为什么不使用性能卓越的.Net矩阵库? – tadman

回答

4

您可以使用Evaluate将矩阵求和作为范围。例如:

Dim ar 
ar = Sheet1.Evaluate("A1:C3 + E1:G3 + I1:K3") 

返回一个数组(矩阵),它是3个矩阵的和。

但是,如果您的意思是按元素对VBA数组元素进行求和并返回结果数组,则循环是唯一选项。

+0

我明白了,谢谢你的回复!我可能必须将数据导出到第三方程序进行评估,然后将结果返回到excel。 – TJYen

+0

@TJYen我想你的目标是利用多处理能力。在这种情况下,事实上VBA循环不会这样做(Exce/Evaluate版本可能会这样做,但不确定,需要一些测试)。 –