VBA 奇怪的语法
VBA Strange syntax
尽管 .Add
是一个 Sub,但下面的 VBE 告诉它期望在第 3 行有一个“=”,我不明白为什么?
1 Sub Set_Params(key As String, value As Variant)
2 Dim Tranasitions as Collection
3 Transitions.Add (value, key)
4 End Sub
这是因为你的代码不知道 Tranasitions
是什么,你在声明中有错字(Dim
行)。
所以要修复它,修复声明:
Dim Transitions as Collection
然后从调用中删除 ()
,你不要将它们与 VBA 中的子一起使用(除非你将 Call
放在前面):
Transitions.Add value, key
首先,使用一致的名称引用集合。
然后,使用 Call Transitions.Add
等或去掉括号。
Vba 有这种神秘的调用语法。
删除括号。
Sub Set_Params(key As String, value As Variant)
Dim Transitions as New Collection
Transitions.Add value, key
End Sub
此外,您必须实际创建一个新的 Transitions 实例。
哦,您在声明时将 Transitions
拼写为 Tranasitions
。开启 Option Explicit
这样就不会再发生了。
尽管 .Add
是一个 Sub,但下面的 VBE 告诉它期望在第 3 行有一个“=”,我不明白为什么?
1 Sub Set_Params(key As String, value As Variant)
2 Dim Tranasitions as Collection
3 Transitions.Add (value, key)
4 End Sub
这是因为你的代码不知道 Tranasitions
是什么,你在声明中有错字(Dim
行)。
所以要修复它,修复声明:
Dim Transitions as Collection
然后从调用中删除 ()
,你不要将它们与 VBA 中的子一起使用(除非你将 Call
放在前面):
Transitions.Add value, key
首先,使用一致的名称引用集合。
然后,使用 Call Transitions.Add
等或去掉括号。
Vba 有这种神秘的调用语法。
删除括号。
Sub Set_Params(key As String, value As Variant)
Dim Transitions as New Collection
Transitions.Add value, key
End Sub
此外,您必须实际创建一个新的 Transitions 实例。
哦,您在声明时将 Transitions
拼写为 Tranasitions
。开启 Option Explicit
这样就不会再发生了。