作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用以下代码快照来循环访问文件夹中的文件,它有一个简单的 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/
我是一名优秀的程序员,十分优秀!