使用本机代码中的值列表填充VBA数组



希望这个问题能有一个快速的答案。。。。

我有一个数组,我想用一个参数列表来填充它。

Sub EasyArrayInput()
Dim myArr() as variant
myArr = ("string1", "string2", "string3")
End Sub

我很清楚如何循环并使用for/next或do/while填充,但如果不使用硬编码方法,就可以在值不变的情况下填充数组,那就太好了。

Sub UsualMethodThatIDontWantToDo()
Dim myArr(1 to 3) as variant
myArr(1) =  "string1"
myArr(2) =  "string2"
myArr(3) =  "string3"
End Sub

有没有用类似于第一个代码片段的方法来做这件事?我更愿意那样做。如果有人问/回答了这个问题,我很抱歉,但我不太确定我问的方法叫什么。

提前感谢!

编辑:解决方案

下面的代码片段(来自chancea发送的链接)将创建一个数组,该数组是我想要的变体和示例。

Sub EasyArrayInput()
Dim myArr() as variant
myArr = Array("string1", "string2", "string3")
End Sub

如果您只有字符串并且不想初始化变体,那么下一个代码片段看起来很有用:

Sub EasyArrayInput()
Dim myArr() as String
myArr = Split("String1,String2,String3", ",")
End Sub

怎么样?

Sub EasyArrayInput()
    Dim myArr() As Variant
    myArr = Array("string1", "string2", "string3")
End Sub

假设你有某种数字序列,你可以做这样的事情:

Dim myArray()
myArray = [TRANSPOSE(INDEX("string"&ROW(1:10),))]

但坦率地说,我认为循环更清晰。

相关内容

  • 没有找到相关文章

最新更新