希望能够快速回答这个问题......
我有一个数组,我想用一个参数列表填充它。
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
无论如何在类似于第一个代码片段的方法中执行此操作?我宁愿那样做。如果这个问题已被提出/回答,我很抱歉,但我不太确定我所询问的方法是什么。
提前致谢!
编辑:解决方案
下面的代码片段(来自偶然发送的链接)将创建一个变量和exaclty我想要的数组。
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
答案 0 :(得分:6)
怎么样?
Sub EasyArrayInput()
Dim myArr() As Variant
myArr = Array("string1", "string2", "string3")
End Sub
答案 1 :(得分:2)
假设你有某种数字序列,你可以这样做:
Dim myArray()
myArray = [TRANSPOSE(INDEX("string"&ROW(1:10),))]
但坦率地说,我认为循环更清晰。