在MATLAB中是否有一种方法可以在数组的行中分配多个值?
让我们说你有一个矩阵M(5,5)和一个向量V = [1,2,3,4,5]
在Matlab中,如果你想用向量V填充第一行,你会写:
M(1,:) = V
在Excel VBA中是否存在类似的内容,而不是循环遍历第一行的每一列并且每次都分配值V(j)?
答案 0 :(得分:0)
你可以尝试这些方法:
Sub InitializeMatrixWithVector()
Dim V(), M()
ReDim M(1 To 5, 1 To 5)
V = Array(1, 2, 3, 4, 5)
M = Application.Choose([1+(row(1:5)=1)], M, V)
Range("B1").Resize(UBound(M), UBound(M, 2)) = M
End Sub
Evaluate
VBA函数。 Application.Choose
是一个可以获取和返回变量数组的WorksheetFunction方法。