这应该根据另一个堆栈溢出帖子工作,但它不是:
Dim arrWsNames As String() = {"Value1", "Value2"}
谁能让我知道哪里出了问题?
发布于 2013-10-15 04:57:26
试试这个:
Dim myarray As Variant
myarray = Array("Cat", "Dog", "Rabbit")
发布于 2014-12-03 18:01:00
在字符串数组的特定情况下,您可以使用Split Function初始化该数组,因为它返回字符串数组而不是变量数组:
Dim arrWsNames() As String
arrWsNames = Split("Value1,Value2,Value3", ",")
这允许您避免使用Variant数据类型,并为arrWsNames保留所需的类型。
发布于 2015-08-22 02:44:25
这里的问题是数组的长度是未定义的,如果数组被显式定义为字符串,这会使VBA感到困惑。然而,变体似乎能够根据需要调整大小(因为它们占用了大量内存,人们通常会出于一系列原因避免使用它们)。
下面的代码运行得很好,但与其他一些语言相比,它有点手动:
Dim SomeArray(3) As String
SomeArray(0) = "Zero"
SomeArray(1) = "One"
SomeArray(2) = "Two"
SomeArray(3) = "Three"
https://stackoverflow.com/questions/19369132
复制相似问题