張貼者:2010年5月29日 上午6:22Administrator ExcelHelp
[
已更新 2010年5月29日 上午6:23
]
請仔細研究下面的程序:
Sub Test1() Dim X, Y As Integer
X = 3.5 Y = 3.5
MsgBox "X = " & X & Chr(10) & "Y = " & Y
End Sub
|
|
然而,答案(居然)是: X=3.5 Y=4
蟲在哪裡? 為什麼同是給定義為整數,X變數居然可以存起小數來呢?原來,X變數並沒有給定義為整數,而是Variant(任何資料型態)。
這個錯誤雖然在大部分情況下不會影響到程序的執行,但卻因Variant的容量較大而浪費記憶(不過以今時今日的標準,只是九牛一毛),且大大減低Excel偵查因資料型態不合、錯打變數名稱而起的邏輯蟲的能力。
正確的寫法,是獨立宣告每一變數,所以程序應是:
Sub Test2() Dim X As Integer, Y As Integer
X = 3.5 Y = 3.5
MsgBox "X = " & X & Chr(10) & "Y = " & Y
End Sub
|
|
結果是: X=4 Y=4
記著啊!
|
|
|
|
|
|