gpt4 book ai didi

loops - 为什么这个 IF 语句不需要 End IF

转载 作者:行者123 更新时间:2023-12-02 14:48:28 25 4
gpt4 key购买 nike

我正在使用以下代码快照来循环访问文件夹中的文件,它有一个简单的 If 来检查文件夹中是否有文件,如果没有则退出。我意识到它不需要在末尾添加 End If 即可正确编译。但是,我想添加一个 msgbox 来解释它退出的原因,为此,我需要在我的代码中引入一个 End If

这是为什么?

原始代码

If Len(strfilename) = 0 Then Exit Sub
Do Until strfilename = ""
'Do some stuff
strfilename = Dir()
Loop

使用 MsgBox

If Len(strfilename) = 0 Then
MsgBox ("No Files Found")
Exit Sub
Else
Do Until strfilename = ""
'Do some stuff
strfilename = Dir()
Loop
End If

最佳答案

有一个单行形式的if:

if (expr) then X

其中 X 必须位于同一,这对于单个表达式来说非常有用:

if 1=1 then exit sub

或者奇怪但合法的(使用:连续字符)

if 1 = 1 Then MsgBox ("No Files Found"): Exit Sub

最好使用更易读的 block 形式编写,该形式需要 end if 来告诉编译器 if block 何时结束:

if 1 = 1 Then 
MsgBox ("No Files Found")
Exit Sub
end if

关于loops - 为什么这个 IF 语句不需要 End IF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12475323/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com