新手遇到一個想不通的問題@@
Sub q1()
Dim a, b, c As Integer
a = InputBox("")
b = InputBox("")
c = a + b
MsgBox c
End Sub
輸入a=1 b=2 msgbox 顯示出的卻是12 而不是3
我的問題是:為什麼已經宣告a,b 是整數型態 VBA卻仍然把他當成字串??
符號 + 變成字串連結子而不是運算子?
我知道的解決的方法是改成 c= val(a) + val(b)
但是我另外又想到一個問題
Sub q2()
Dim a, b, c, d, e As Integer
a = InputBox("")
b = InputBox("")
c = a
d = b
e = c + d
MsgBox e
End Sub
這樣的結果會和上面一樣是12
可是只要改變宣告變數的順序
Dim a, b, e, c, d As Integer
msgbox就會顯示3
這其中的差異到底在哪裡呢??