用变量值填充VBA阵列

时间:2019-04-25 16:16:24

标签: vba

抱歉,我没有找到解决此问题的方法。尝试以这种方式定义数组时

Dim Arr As Variant: Arr = [{"Value1", "Value2"}]

可以很好地工作,但是当尝试使用变量(即)做同样的事情时

Dim Arr as variant
v1 = "Value1"
v2 = "Value2"
Arr = [{v1, v2}]

将引发语法错误。请问有什么办法解决吗?我确实需要使用变量来填充数组。预先感谢

1 个答案:

答案 0 :(得分:3)

Arr = [{"Value1", "Value2"}]

Arr = Application.Evaluate("{""Value1"", ""Value2""}")

您正在使Excel公式引擎解析该表达式,并将其解析为array constant
显然,公式引擎对VBA变量一无所知。

您应该简单地使用

Arr = Array(v1, v2)