gpt4 book ai didi

vba - 如何在VBA中添加两个矩阵?

转载 作者:行者123 更新时间:2023-12-01 23:00:00 25 4
gpt4 key购买 nike

我想知道如何在 VBA 中添加两个矩阵:

Sub add_two_matrices()
Dim A As Variant
Dim B as Variant
A = ActiveWorkbook.Sheets("Location_of_A").Range("A1: A5")
B = ActiveWorkbook.Sheets("Location_of_B").Range("A1: A5")

其中 A = [1, 2, 3, 4, 5] 且 B = [2, 3, 4, 5, 6]我想得到C = A + B,即[3, 5, 7, 9, 11]

最佳答案

不确定,但最接近的是:

Edit2:合并下面的Transpose将返回一个一维数组。

Dim c, i As Integer
c = Evaluate("Transpose(Location_of_A!A1:A5)+Transpose(Location_of_B!A1:A5)")

'/* loop to check the values */
For i = LBound(c) To UBound(c)
Debug.Print c(i)
Next

您还可以使用 MMULT WorksheetFunction 来获取您想要的内容。

Dim a, b, c, i As Integer

With Application
a = .Transpose(Sheets("Location_of_A").Range("A1:A5"))
b = .Transpose(Sheets("Location_of_B").Range("A1:A5"))
c = .WorksheetFunction.MMult(Array(1, 1), Array(a, b))
End With

'/* loop to check values */
For i = LBound(c) To UBound(c)
Debug.Print c(i)
Next

以上有效,因为您的值在工作表内。
但是,如果您需要纯 VBA 解决方案,则必须循环。

关于vba - 如何在VBA中添加两个矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48716239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com