[算表] 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