gpt4 book ai didi

vba - 将值从一个数组分配给另一个数组而不循环

转载 作者:行者123 更新时间:2023-12-04 21:02:56 25 4
gpt4 key购买 nike

有没有像 MATLAB 那样在数组的行中分配多个值的方法?

假设您有一个矩阵 M(5,5) 和一个向量 V = [1, 2, 3, 4, 5]

在 Matlab 中,如果你想用向量 V 填充第一行,你可以这样写:

M(1,:) = V 

Excel VBA中是否有类似的东西,而不是循环遍历第一行的每一列并每次都分配值V(j)?

最佳答案

您可以尝试以下方法:

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 方法,可以获取和返回变量数组。
  • 关于vba - 将值从一个数组分配给另一个数组而不循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32551069/

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