`

Excel VBA学习笔记-3

 
阅读更多

Visual Basic 语言参考的关键字分类篇

一.控制流关键字总结

 

1.分支

 

i.GoSub...Return 语句

 

在一个过程中跳到另一个子程序中执行,执行后再返回。

 

 

可以在过程中的任何地方使用 GoSub Return,但是 GoSub 和与之相应的 Return 语句必须放在同一个过程中。一个子程序中可以包含一个以上的 Return 语句,但是当碰到第一个 Return 语句时,程序就会返回到紧接在刚刚执行的 GoSub 语句之后的语句继续执行。

注意 不能使用 GoSub...Return 来进入或退出 Sub 过程。

提示 创建分开的过程,并使用 GoSub...Return 来调用,可以使程序更具结构化。

 

 

 

Sub GosubDemo()
Dim Num
' 请求用户输入一个数字。
    Num = InputBox("Enter a positive number to be divided by 2.")
' 如果用户输入一个正整型,则使用子程序。
    If Num > 0 Then GoSub MyRoutine    
    Debug.Print Num
    Exit Sub    ' 使用 Exit 命令来避免错误发生。
MyRoutine:
    Num = Num/2    ' 将数除以 2。
    Return    ' 将控制返回 GoSub 之后的语句。
End Sub

 

 

ii.On Error 语句

a.On Error GoTo line  

类似于java的try{...}catch(Exception e){...}如果要对错误信息进行捕获处理,最好使用它

 

Sub test()
Dim a As Integer
Dim b As Integer
a = 3
b = 0
On Error GoTo errorline
Debug.Print a / b
errorline:
Select Case Err.Number
   Case 11
     Debug.Print "除数不能为零"
   Case Else
     Debug.Print "其他错误"
End Select
End Sub

 

b.On Error Resume Next

错误发生时,仍然继续执行下面的语句

 

Sub test()
Dim a As Integer
Dim b As Integer
a = 3
b = 0
On Error Resume Next
Debug.Print a / b
Select Case Err.Number
   Case 11
     Debug.Print "除数不能为零"
     b = 1
   Case Else
     Debug.Print "其他错误"
End Select
End Sub

 

c.On Error GoTo 0

关闭错误处理程序,类似java的throw,抛出异常

 

Sub test()
Dim a As Integer
Dim b As Integer
a = 3
b = 0
On Error Resume Next
Debug.Print a / b
On Error GoTo 0
Select Case Err.Number
   Case 11
     Debug.Print "除数不能为零"
     b = 1
   Case Else
     Debug.Print "其他错误"
End Select
End Sub

 

 iii.On...GoSub与On...GoTo

 Sub OnGosubGotoDemo()

Dim Number, MyString
    Number = 2    ' 设置变量初值。
    ' Branch to Sub2.
    On Number GoSub Sub1, Sub2    ' 在 On...GoSub 退出後,程序会回到此处来继续完成。
    On Number GoTo Line1, Line2    ' 完成 Line2 标记之区段。
    ' 在 On...GoTo 退出之后,程序不会回到此处来。
    Exit Sub
Sub1:
    MyString = "In Sub1": Return
Sub2:
    MyString = "In Sub2": Return
Line1:
    MyString = "In Line1"
Line2:
    MyString = "In Line2"
End Sub

 iv.

分享到:
评论

相关推荐

    Excel VBA学习笔记

    这篇“Excel VBA学习笔记”涵盖了多个关键知识点,下面将对这些内容进行详细讲解。 一、VBA基础 1. **环境介绍**:VBA开发环境包括VBE(Visual Basic Editor)编辑器,它提供了代码编辑器、项目浏览器、对象浏览器...

    EXCEL VBA ListView+Toolbar 控件学习笔记

    EXCEL VBA ListView+Toolbar 控件学习笔记,加示例和代码

    VBA学习笔记系列----WorkBookworksheetsRange对象[汇编].pdf

    VBA学习笔记系列----WorkBook、Worksheets、Range对象是 Microsoft Excel 中的三个重要对象,它们分别代表 Excel 工作簿、工作表和单元格范围。在本文中,我们将详细介绍这三个对象的属性和方法,以及它们之间的关系...

    【免费下载】ExcelVBA和WordVBA教程.rar

    通过学习Excel VBA,你可以: 1. **宏录制**:Excel内置的宏录制功能可以帮助初学者快速入门,记录并回放一系列操作,无需深入了解代码。 2. **对象模型**:理解Excel的对象模型是编写高效VBA的关键。主要包括...

    Day1-跟着孙兴华学习Excel VBA 第二季

    Day1-跟着孙兴华学习Excel VBA 第二季

    ExcelVBA与WordVBA教程第4季.pdf

    ExcelVBA和WordVBA是Microsoft Office套件中两种强大的自动化工具,它们允许用户通过编程方式来控制和自定义这两个程序的行为。本教程主要聚焦于第4季的内容,深入讲解了对象、集合、属性和方法等核心概念。 首先,...

    ExcelVBA入门笔记,看了你也可以轻松入门VBA!

    Excel VBA 入门笔记,看了你也可以轻松入门 VBA! Excel VBA 是 Excel 中的一种编程语言,可以帮助用户实现自动化操作、数据分析和报表生成等功能。通过学习 Excel VBA,可以提高工作效率和数据处理能力。 在 ...

    excel vba教程查询笔记

    综上所述,Excel VBA教程查询笔记不仅为学习者提供了一个了解和入门VBA的平台,而且通过深入讲解和实践操作,帮助学习者掌握了在日常工作中解决复杂问题的高级技巧。通过本教程,学习者可以提高个人的办公自动化水平...

    excel函数学习笔记

    这份"excel函数学习笔记"包含了个人的学习总结,旨在帮助读者掌握这些功能并提升工作效率。 1. **基础函数理解** - **SUM**: 用于求和。例如,`=SUM(A1:A10)` 将计算A1到A10区域内的所有数字之和。 - **AVERAGE**...

    EXCEL VBA教程查询笔记

    本教程查询笔记是专业教师编写的,旨在帮助学习者深入理解和掌握Excel VBA的核心概念和实用技巧。 在Excel VBA中,查询功能是非常重要的一个部分,它使得数据处理和分析变得高效便捷。以下是本教程可能涵盖的一些...

    Excel2007学习笔记

    通过实践和学习《Excel 2007学习笔记.txt》中的内容,你将能够熟练掌握这些技巧,提高工作效率,并在数据分析领域取得显著进步。不断练习和探索,你会发现Excel2007是一个强大而实用的工具,能满足各种业务需求。

    VBA自己学习笔记

    ### VBA学习笔记关键知识点详解 #### 一、工作簿管理与操作 VBA(Visual Basic for Applications)是Microsoft Office套件中的一种编程语言,特别适用于自动化Excel、Word等应用程序的任务。以下是从“VBA自己学习...

    VBA学习笔记本(二)——两个表格数据匹配_DEMO

    VBA学习笔记本(二)——两个表格数据匹配_DEMO 将excel中两个工作表中,数据进行一键同步的通用方法

    ExcelVBA.rar_Excel VBA_excel access_excel+vba+access_vba access_

    文件列表中只有一份“ExcelVBA.doc”,这可能是一个详细的教程文档,包含了上述所有知识点的详细说明,也可能包括练习和解答,以帮助学习者更好地掌握Excel VBA与Access的整合技巧。 总之,这份资料对于那些希望...

    VBA学习笔记02Excel之VBA编程常用语句300句.doc

    ### VBA学习笔记02Excel之VBA编程常用语句解析 #### 一、定制模块行为 1. **Option Explicit**: - **用途**:强制要求在使用任何变量之前必须先声明它。 - **解释**:此指令用于确保在模块中使用的每个变量都已...

    vba.rar_Excel VBA_VBA 写入excel_excel_vba excel

    标题中的“vba.rar_Excel VBA_VBA 写入excel_excel_vba excel”表明了这个压缩包包含的主要是关于Excel VBA(Visual Basic for Applications)的编程内容,特别是涉及如何利用VBA来操作Excel,比如写入数据到工作表...

    Excel_VBA与数据库(Access)整合笔记.rar

    通过学习和实践这些知识点,你可以利用Excel VBA和Access数据库的强大功能,实现高效的数据管理和自动化处理。这本“Excel VBA与数据库(Access)整合笔记”文档会深入探讨这些主题,帮助你提升在数据处理领域的技能。

    Excel VBA与数据库(Access)整合笔记

    本笔记将详细阐述如何使用VBA在Excel中创建并操作Access数据库,涉及的知识点涵盖了DAO(数据访问对象)、ADOX(ActiveX数据对象扩展)、数据库的创建与管理等方面。 首先,我们来了解DAO,它是一种面向对象的编程...

    Excel_VBA与数据库(Access)整合笔记

    ### Excel_VBA与数据库(Access)整合笔记精要解析 #### 一、创建数据库和数据表的方法 在《Excel_VBA与数据库(Access)整合笔记》中,作者加肥猫详细介绍了通过多种技术手段实现Excel与Access数据库整合的过程。本文...

    Excel VBA编写代码操控 OneNote

    在Excel VBA编程中,有时候我们需要处理一些自动化任务,例如从网页或文档中提取文本,尤其是在面对包含大量图像数据的情况。在这种场景下,如果图像中含有文字,传统的文本处理方法可能无法奏效。针对这种情况,...

Global site tag (gtag.js) - Google Analytics