[算表] VBA遇到的一個奇怪錯誤

作者: Lanjaja   2021-02-14 12:46:18
軟體:Office 2013的Excel
版本:15.0.4701.1001
這個問題應該與版本無關,
我在寫一個小程式時,會遇到一些奇怪的問題就卡住。
例如這個例子:
Sub text()
Dim i As Integer
For i = 10 To 1 Step -1
If i = 3 Then Exit For
End If
Next i
MsgBox "現在的i是" & i
End Sub
結果執行時發生編譯錯誤:有End If,卻沒有If
很怪,明明就有If i = 3...
想請教一下各位強者前輩,問題出在哪裡?
感謝回答~
另外一個題外話,Excel有時候常遇到程式不變,執行好幾次都出問題
但是之後就又可以了,大家有沒有遇過這麼玄的事情?
作者: newton41 (Newton)   2021-02-14 13:27:00
把Exit for換行,或把end if刪掉。
作者: Lanjaja   2021-02-14 16:42:00
謝謝,我後來是將Exit for弄到下一行,可是一般程式不是換不換行沒有差嗎?以前學C語言都沒有這種格式的問題
作者: chunchanhung (毛毛狂)   2021-02-14 17:54:00
If 條件 then 程序就不用放end if如果是下面就要放end ifIf 條件 then程序End ifhttps://docs.microsoft.com/zh-tw/office/vba/language/reference/user-interface-help/ifthenelse-statement
作者: ms0428 (小炫風)   2021-02-15 13:37:00
不用end if
作者: waiter337 (給開司一罐蘇格登)   2021-02-16 03:38:00
if 寫法 有兩種 一種是一行搞定 一種是 上下包中間如果then的右邊有東西 就是一行搞定的模式就不用end if反之 就要有end if
作者: Lanjaja   2021-02-17 21:54:00
謝謝以上四位前輩的講解,我了解了,以後會更注意,感謝

Links booklink

Contact Us: admin [ a t ] ucptt.com