VBA编程中的流程控制:goto和exit exit语句: 功能:exit语句用于直接跳出一个循环结构或一个子过程。 种类: exit do:用于退出do while循环。 exit for:用于退出for循环。 exit sub:用于退出sub子过程。 exit function:用于退出function函数。 注意事项: While wend循环没有相应的exi...
所以exit sub是不可缺少的。程序有两个流程,一个是正常流程,一个是错误处理流程。 4. 对于错误处理,除了on error goto外,还有一个语句on error resume next。它的意思是,从下一句开始执行,如果某行出错,就忽略它并继续执行。下面是一个示例。 Dim i as integer i=cells(3,2) on error resume next i=i...
1.GoTo语句 无条件地跳转到程序的某个标记,此标记可以利用任何字符组合,以字母开头,以冒号结尾。2.On…GoTo语句 如果希望根据表达式的结果而决定跳转到某个标记处,需要利用On…GoTo语句,语句法如下:On expression GoSub destinationlist On expression GoTo destinationlist 示例如下:Sub OnGosubGotoDemo()Dim N...
Exit Sub error:MsgBox "除数不能为零"End Sub 可以看到,例子中 num2 是除数,程序判断 num2 是否为零,如果是,则跳转到 Error 标签处,除法部分不会被执行。总结 Goto 结构相对简单,实际开发中不像三大结构使用频繁,但是在一些情形中使用,可以使代码更简洁易读。GoTo 语句常用于错误处理外,还可以用在「...
退出sub子过程,使用exit sub;退出function函数,使用exit function While wend循环没有相应的exit退出语句,所以该循环不推荐使用。(2)一个示例 (3)exit只能跳出一层循环 当有多层循环嵌套时,exit只能退出它所在的那一层循环。要跳出多层循环,需要多个判断语句与exit语句配合。goto语句可以跳转到同一...
GoTo ExitSub End If '保存当前目录,以便以后恢复 strCurDir = CurDir '切换到所需要的目录 If Len(strPathName) > 0 Then ChDrive strPathName ChDir strPathName End If '循环直至输入了不同的文件名 Do strFullName = _ Application.GetSaveAsFilename( _ ...
④ On Error GoTo 0 一一般的VBA错误处理语句 为了说明上面的几个语句,我们简单的写几行代码,如下:Sub mynz_37()On Error GoTo ErrHandler k = 1 / 0 ExitProcedure:On Error Resume Next k = 1 / 0 + 1 MsgBox k Exit Sub ErrHandler:MsgBox "错误代码: " & Err.Number & vbCrLf & _"错误...
1、退出过程——Exit Sub 2、退出函数——Exit function 3、退出for循环——Exit for 4、退出do循环——Exit do 三、Goto语句 跟其它语言一样,VBA也给出了Goto语句,它有自己的特色,还是遵从大牛们讲的,不到不得已,尽量不使用Goto语句,因为那样跳来跳去的程序的可读性差,维护较麻烦。
Exit Sub 1: MsgBox "test" End Sub Sub test2() On Error Resume Next Dim sht As Worksheet Set sht = Worksheets(20) MsgBox sht.Name Exit Sub 2: MsgBox "test2" End Sub Sub test3() On Error GoTo 3 Dim sht As Worksheet Set sht = Worksheets(...
"行出错了" 48 End Sub 49 50 'on error goto 0 '取消错误跳转 51 52 Sub t5() 53 On Error Resume Next 54 Dim x As Integer 55 For x = 1 To 10 56 If x > 5 Then On Error GoTo 0 57 Cells(x, 3) = Cells(x, 2) * Cells(x, 1) 58 Next x 59 Exit Sub 60 61 End Sub ...