【发布时间】:2017-06-26 14:08:28
【问题描述】:
我很难理解变量在 VBA 中的工作方式。有时当我尝试将值放入变量时会出错。
例如:
Sub test3()
Dim myvar2 As Integer
'Does Not work -- Type Mismatch Error
'myvar2 = [D1:D10]
'Works
'myvar2 = Range("D4")
'myvar2 = Range("D4").Value
'myvar2 = Evaluate("SUM(D1:D10)")
MsgBox (myvar2)
End Sub
仅供参考,D1:D10 中的值都是整数,所以我不知道为什么会出现类型不匹配错误。
Evaluate("SUM(D1:D10)") 等价于 [D1:D10].. 那么为什么一个有效而另一个无效呢?
我显然刚刚进入 VBA ......所以这可能是一个罕见的情况......我所有其他的麻烦都是因为我试图在不是对象的东西之后使用 .Value。
我看过不少关于变量的视频,但没有一个能回答我的问题。
tl;博士——
myVar =(我可以放什么/不放什么以将此值存储为变量)
【问题讨论】:
-
“不将此值存储为变量”是什么意思?
-
Evaluate("SUM(D1:D10)") NOT 等价于 [D1:D10]
-
你想要
[SUM(D1:D10)]相当于Evaluate("SUM(D1:D10)")
标签: vba excel variables syntax