VB程序调试与错误处理初步

合集下载

VB程序的调试与错误处理

VB程序的调试与错误处理

语法错误是因为不正确的代码产生的 . 即在 编 写 程 序 时 没 有
遵守 V B的语 法 规 则 , 写 了错 误 的语 法 代 码 , 而 导 致 V 书 从 B编 译 器 无 法 正确 解 释源 代 码 而 产 生 的 错 误 , 常是 由 于 录 入 的 错 误 引 通 起 的 。 此 也称 为 编 译错 误 。 常 见编 译 错 误 见 表 1 因 。
如程序代码zx 3=4 =y 2
错误魔 因zx 3 } = 作为一个完整的语句. 翌 法结秉 , 个赋 值语句 中间缺 少冒 号和 两 分写在两行. 错误原因z 过程调用不应|出现在衰迭 亥 式中,过程调用应作为独立的命令.
句.对 于嵌入 式 I…E d f语句而 啻, f n I
维普资讯

开 发 研 究 与 设 计 技 术 ・ ・ 。 ・・
本 目 任 辑: 媛 栏 责 编 谢媛
V 程序的调试与错误处理 B
万 钢 。 爱萍 初 ( 武汉 软 件 职 业 学 院 , 北 武 汉 4 0 3 ) 湖 30 3
摘要 : 章介 绍 了 VB程 序 的 常 见错 误 、 误 类 型 、 用 的调 试 方 法 以及 错 误 处 理 程 序 。 于提 高 V 应 用 程 序 的 开 发效 率非 常 有 用 。 文 错 常 对 B
表 1 常 见 编 译 错 误
错误 信息 举例 错误原 因
x = 2 00 ̄ 5 0 36
类型不匹配 ( 错误 1 ) 3
z 2a %=13
可将 整个宇符串视为整型
缺少 :语 句结秉 如程 序 代码 l o = T 1 zi1 o 0 错误原 因zF z F o 关键 宇和 i 之闻 没有分 隔符 ,V 将 Fx 1 3 o 理解 为一 个变量 将 Fr= 作 为一个赋 值语 句来 使用 . oiI

VBA错误处理与调试方法

VBA错误处理与调试方法

VBA错误处理与调试方法在VBA编程中,错误处理和调试是非常重要的步骤。

错误处理可以帮助我们在程序执行过程中遇到错误时进行处理,避免程序崩溃或产生意外结果。

而调试则是帮助我们找出程序中的错误,并进行修复。

在VBA中,错误处理和调试有多种方法和技巧,下面将介绍一些常用的技巧和方法。

1.错误处理方法(1)使用On Error语句进行错误处理在VBA中,可以使用On Error语句来捕获并处理错误。

常见的用法如下:```vbaSub ErrorHandlerOn Error GoTo ErrorHandler'出现错误的代码MsgBox 1 / 0Exit SubErrorHandler:MsgBox "出现错误:" & Err.Description'在这里进行错误处理End Sub```(2)使用Err对象查看错误信息在错误处理程序中,可以使用Err对象来查看当前的错误信息,例如:- Err.Number:错误代码- Err.Description:错误描述通过查看这些信息,可以帮助我们更好地了解错误原因,从而进行相应的处理。

2.调试方法(1)使用Debug.Print输出调试信息在VBA中,可以使用Debug.Print语句来输出调试信息,例如变量的值、程序执行的状态等。

通过输出这些信息,可以帮助我们更好地了解程序执行的过程,并发现潜在的问题。

```vbaSub DebugInfoDim i As Integeri=10Debug.Print "变量i的值为:" & iEnd Sub```在运行上面的示例时,可以在“即时窗口”中看到输出的调试信息。

(2)使用断点调试除了输出调试信息,还可以使用断点调试来逐步执行程序,并观察程序的执行过程。

在VBA中,可以通过在代码行前面加上断点,然后使用F5键来逐步执行程序。

在断点调试模式下,可以查看变量的值、执行顺序等信息,并通过F8键逐步执行代码。

VB第9章测序调试与错误处理PPT课件

VB第9章测序调试与错误处理PPT课件
动态检查中,通常在一些敏感点处设置断点,检查一些变 量或表达式的值。
10
9.3.2 使用VB调试工具
使用“调试”菜单或“调试”工具栏
切换断点 逐过程 本地窗口 监视窗口
1.切换断点
“切换断点”按钮用来设置断点
逐语句 跳出 立即窗口 快速监视
2. 逐语句
VB允许逐条语句执行程序,每执行一条语句后就返回中断 模式。
17
(4)单击“调试”工具栏上的“逐语句”按钮,让程序单 步执行。
(5)连续单击“逐语句”按钮,使程序在For语句循环执 行9次,此时本地窗口显示的变量值如图9.7所示
18
(6)再次单击“逐语句”按钮。程序不再继续循环,而 是退出循环,去执行Next i下一个的Print
例子: Foor t = 1 To 100
3
2. 运行错误
运行时的错误是指应用程序在运行期间执行了非法操作 所发生的错误。
例如,除法运算中除数为零,访问文件时文件夹或文 件找不到等。这种错误只有在程序运行时才能被发现。
举例(“下标越界”): Private Sub Form_Load() Dim D(20) As Integer, k As Integer For k=1 To 30 D(k)=k*K Next k End Sub
4
3.
逻辑错误使程序运行时得不到预期的结果。这种程序没有
语法错误,也能运行,但却得不到正确的结果。
例如,在一个算术表达式中,把乘号“*”写成了加号 “+”,条件语句的条件写错,循环次数计算错误等
例如,要求10!
Private Sub Form_Load()
Dim t As Integer
For i=1 To 10

第10章 VB常见错误类型和程序调试方法

第10章 VB常见错误类型和程序调试方法

10.3 程序调试方法

在设计或中断模式下,将鼠标移动到“工具”菜单上右击,在随后 出现的快捷菜单上选择“调试”命令,出现如图10-1所示的“调试” 工具栏。 下面重点介绍与程序调试有关的几个工具按钮的作用。

(1)切换断点
在程序代码中设置或取消断点,程序执行到该语句时停下来。 注意:设置断点的方法是在代码窗口中选择一条语句,单击“切换断 点”按钮或按F9键,该语句变为暗红色,即设置成功,程序中允许 设置多个断点。再次用同样的方法便取消断点。按Ctrl + Shift + F9组 合键清除所有断点。

返回
10.3 程序调试方法

调试程序是一件复杂的工程,不但要求程序员对系统设计结果非常 熟悉,思路清晰,更需要不断地在实践中积累经验。 这里程序调试的基本方法包括:中断模式调试、调试工具调试和编写 错误处理程序。重点介绍前两种方法。


1.中断模式
在VB集成开发环境中,程序有设计、运行和中断三种模式VB的标题 栏会列出当前的模式。在设计模式下,程序员可改变应用程序的设 计和代码,但所作不能改变对应用程序运行的影响;在运行模式下, 程序员可以监视应用程序的行为,但不能直接修改代码;中断模式可 以暂停应用程序的执行,
上一页 下一页 返回
10.3 程序调试方法

(2)逐语句与立即窗口 逐语句是指程序将逐个语句执行,一句一停。在逐语句执行时,用 户会看到正在执行的语句为黄色,同时出现一个“立即”窗口,用 户可以在“立即”窗口使用Print方法或问号(?)查看变量或表达式的 值,如图10 -2所示。 (3)逐过程 每单击一次“逐过程”按钮将执行一个过程或函数,同时也会出现 一个“立即”窗口。用户可以在“立即”窗口使用Print方法或问号(?) 查看变量或表达式的值。和逐语句相比,二者的不同之处在于逐过 程不跟踪到过程或函数内音f。

VBA错误处理与调试技巧

VBA错误处理与调试技巧

VBA错误处理与调试技巧VBA(Visual Basic for Applications)是一种在Microsoft Office应用程序中使用的编程语言。

它提供了很多功能强大的特性,可以帮助用户自动化任务、增强应用程序的功能。

然而,编写VBA代码时常常会遇到各种错误,这就需要我们学会如何正确地处理和调试这些错误。

本文将介绍一些常用的VBA错误处理和调试技巧,以帮助读者更好地理解和应对VBA代码中的错误。

一、错误处理基础1.1 引发错误VBA代码中的一个子程序可以通过使用"Err.Raise"语句来引发一个错误。

这可以是一个自定义的错误,也可以是一个系统定义的错误。

语法如下:Err.Raise Number, [Source], [Description], [HelpFile], [HelpContext]其中,Number是错误代码,Source是错误的源头(一般为函数或过程的名称),Description是错误的描述信息,HelpFile和HelpContext是提供帮助信息的文件和上下文。

1.2 处理错误VBA提供了一种处理错误的机制,即使用"On Error"语句。

使用"On Error"语句可以将错误处理的控制权交给指定的错误处理程序。

语法如下:On Error GoTo ErrorHandler在这之后的代码中,如果发生错误,程序将会跳转到名为ErrorHandler的标签处进行错误处理。

1.3 清除错误清除错误是指将错误状态重设为0,从而结束错误处理过程。

我们可以使用"On Error Resume Next"语句来清除错误。

当程序执行到这一语句时,如果发生错误,程序将会跳过该错误,并继续执行后续代码。

二、常见的VBA错误处理技巧2.1 错误处理程序为了更好地处理VBA代码中的错误,我们可以创建一个专门的错误处理程序。

VBA中的错误处理与调试技巧

VBA中的错误处理与调试技巧

VBA中的错误处理与调试技巧VBA是一种用于微软Office应用程序的编程语言,可以帮助用户创建自定义宏和自动化任务。

在程序开发过程中,错误是难以避免的。

因此,掌握VBA中的错误处理和调试技巧是非常重要的。

本文将介绍一些常见的错误处理和调试技巧,以帮助您更好地解决问题和优化代码。

错误处理是指在程序执行过程中处理错误的能力。

当错误发生时,如果没有进行适当的错误处理,程序可能会崩溃或产生意外结果。

以下是一些常用的错误处理技巧:1. 使用错误处理语句:在VBA中,我们可以使用“On Error”语句来处理错误。

这个语句可以设置不同的处理模式,例如“Resume Next”模式会忽略错误并继续执行下一条语句,而“GoTo”模式会跳转到指定的标签位置继续执行。

使用错误处理语句可以帮助我们在错误发生时有针对性地进行处理。

2. 添加错误处理程序:除了使用错误处理语句,我们还可以添加特定的错误处理程序来捕获和处理错误。

通过添加错误处理程序,可以对不同类型的错误进行不同的处理方式。

可以使用“Err”对象的属性来获取有关错误的详细信息,并根据需要采取相应的措施,例如显示错误消息、记录错误信息等。

3. 使用断言:断言是一个用于验证程序假设的工具。

在VBA中,我们可以使用“Debug.Assert”语句来创建断言。

通过在关键的代码中添加断言,可以帮助我们发现潜在的问题并及时进行修复。

如果断言失败,则会弹出一个错误对话框,提示我们错误的位置和详细信息。

调试是指通过定位并修复程序中的错误来改进代码。

以下是一些调试技巧,帮助您更好地定位问题并进行修复:1. 使用调试工具:VBA提供了一些内置的调试工具,例如断点、监视窗口和调用堆栈窗口等。

可以使用断点来暂停程序的执行,以便我们可以逐步检查代码。

监视窗口可以帮助我们跟踪变量的值和状态。

调用堆栈窗口可以显示当前正在执行的函数和子过程的调用层次结构。

2. 单步执行代码:通过单步执行代码,我们可以逐行地执行程序,并观察变量和表达式的值的变化。

VBA错误处理与调试方法

VBA错误处理与调试方法

VBA错误处理与调试方法VBA(Visual Basic for Applications)是一种编程语言,特别用于扩展Microsoft Office应用程序的功能。

在编写VBA代码时,经常会遇到错误并需要进行处理和调试。

正确的错误处理和调试方法可以帮助我们识别和解决代码中的问题,从而提高代码的稳定性和可靠性。

本文将介绍一些常见的VBA错误处理和调试方法,帮助读者更好地编写和维护他们的VBA代码。

错误处理是指在发生错误时,以某种方式捕捉和处理该错误,防止程序崩溃或产生不可预料的结果。

在VBA中,可以使用"单条错误处理"和"全局错误处理"两种方法来处理错误。

单条错误处理是将错误处理代码直接插入到可能引发错误的代码段中。

使用VBA的On Error语句可以实现单条错误处理。

以下是一个示例:```vbaOn Error GoTo ErrorHandler' 可能引发错误的代码段' ...' ...Exit SubErrorHandler:' 错误处理代码MsgBox "发生错误:" & Err.Description```在上述代码中,当程序执行到可能引发错误的代码段时,如果发生错误,会跳转到ErrorHandler标签处执行错误处理代码。

通过MsgBox函数,我们可以显示错误信息,并根据需要采取修复措施。

全局错误处理是将错误处理代码置于主模块或公共模块中。

这样,在任何模块发生错误时,都可以跳转到全局错误处理代码进行处理。

以下是一个示例:```vbaPublic Sub GlobalErrorHandler()' 错误处理代码MsgBox "发生错误:" & Err.DescriptionEnd Sub```然后,在需要进行错误处理的模块中,使用On Error语句将错误跳转到全局错误处理代码:```vbaOn Error GoTo GlobalErrorHandler' 可能引发错误的代码段' ...' ...Exit Sub```通过这种方式,可以集中管理所有的错误处理代码,提高代码的可读性和可维护性。

VBA 中的错误处理及运行时调试方法

VBA 中的错误处理及运行时调试方法

VBA 中的错误处理及运行时调试方法在VBA中,错误处理和运行时调试是编写可靠和高效代码的重要工具。

错误处理允许您在代码中检测和处理可能出现的错误,而运行时调试则允许您识别和解决代码中的问题。

本文将详细介绍VBA中的错误处理和运行时调试方法,以帮助您提高代码的可靠性和可维护性。

1. 错误处理编写健壮的代码意味着不仅要预料可能发生的错误,还要在错误发生时正确处理它们。

下面是几种常用的错误处理方法。

1.1 On Error语句On Error语句用于指定错误处理程序,以便在发生错误时执行特定的代码块。

它有以下三种常用的用法。

1.1.1 On Error Resume NextOn Error Resume Next语句告诉VBA在发生错误时继续执行下一行代码,而不中断程序的执行。

这对于在某些情况下忽略错误是非常有用的。

1.1.2 On Error GoTo 0On Error GoTo 0语句用于取消先前设置的错误处理程序。

它能确保在错误发生后立即中断程序的运行,而不会继续执行下一行代码。

1.1.3 On Error GoTo [Label]On Error GoTo [Label]语句将执行流程跳转到指定的标签处。

这通常用于在发生错误时执行特定的错误处理代码。

1.2 Err对象Err对象用于访问有关最近一次发生的错误的信息。

它包含了以下几个常用的属性。

1.2.1 NumberNumber属性返回一个错误代码,用于标识特定类型的错误。

1.2.2 DescriptionDescription属性返回一个描述错误的字符串。

1.2.3 SourceSource属性返回一个字符串,用于指示发生错误的位置。

1.2.4 HelpContextHelpContext属性返回一个整数,表示与错误相关的帮助文件的上下文ID。

1.2.5 HelpFileHelpFile属性返回一个字符串,表示与错误相关的帮助文件。

1.3 示例代码下面是一个使用错误处理的示例代码,该代码从指定的工作簿中复制数据到当前工作簿。

VB程序的调试和常见错误的捕获及错误处理方法

VB程序的调试和常见错误的捕获及错误处理方法
S i+ 8键 即可 。 hf F t
2 窗 口 B检测期间 ,当一个语句 试 图执行一个不 能执行的操作 时 ,就会 发生运行错误 。例 如 : VS =/ T此语句本身 并无语法错误 , 当 T为零 时 , 但 此除法就是无 效 的操作。 这样 的错误从静态上是看不 出来 的, 只有当程序运行 时 才能 够 检 测 到 , 此 , 们 可 以在 程 序 中 加 入 一个 或 多个 条 件 为 我 进行检查 , 而保证程序的正确执行。 从
误 类 型 和程 序 的调 试 方 法 以及 错误 的捕 捉 及 处理 方法 希 望 本 文 对提 高 用 户的 程 序 设 计 水 平 能有 较 大 的帮 助 。
【 关键词】V B程序 调试 错误捕获 错误处理
V B是微软公司推出的一种可视化 的、 面向对象 的 、 由事件 驱动的结构化高级 程序设计语言 。V B以其 功能强大 、 易学易用 的特点受到广大编程爱好者的青睐 。 但在编 写程序 的过程 中, 无 论我们如何仔 细 、认 真地编写程序的代码 ,错误仍是不可避免 的。 作为一名程序设计人员 , 必须 了解程序的错误类型和处理方 法, 掌握程序 的调试方 法。本 文就 V B程序 中错误的类 型 、 程序 调 试 和 错误 的处 理 方 法 进 行 探 讨 和 分 析 。

2编 译 错 误 .
当用户单 击“ 启动” 按钮运行程序时 , B首先要对代码进行 V 编译 , 这时产生 的错误就称为编译错误 。 编译错 误的产生一般是 由于用户没有严 格按 照 V B的语 法规则编写代码 , 比如对 变量 、 数 组 未 定 义 就使 用 、 I 缺 少 E d I、o 循 环 由 于 Fr N x F块 n fFr o 和 et 中的循环不一致 等情况 , B在编译时就会发现 ,并 给出用户 出 V 错信息。编译错误又称语法错误 ,这类错误比较容 易发现和处

VBA调试技巧与常见错误解决方案

VBA调试技巧与常见错误解决方案

VBA调试技巧与常见错误解决方案VBA(Visual Basic for Applications)是一种基于Microsoft Visual Basic的编程语言,广泛应用于Microsoft Office的宏编程中。

在使用VBA进行编程时,我们常常会遇到一些错误和问题。

本文将介绍一些VBA调试技巧和常见错误解决方案,帮助读者更好地应对这些挑战。

1. 使用MsgBox和Debug.Print语句进行调试在VBA编程过程中,调试是非常重要的环节。

我们可以使用MsgBox和Debug.Print语句来输出一些调试信息,以了解程序的执行情况和变量的值。

MsgBox语句用于弹出一个消息框,可以显示提示信息或者变量的值。

例如,我们可以使用如下语句来输出变量i的值:```MsgBox i```Debug.Print语句则将信息输出到“立即窗口”,可以在编辑器的“视图”菜单中找到。

通过在代码中插入Debug.Print语句,我们可以在程序执行过程中查看输出的信息。

例如,我们可以使用如下语句来输出变量i的值到“立即窗口”:```Debug.Print i```这两个语句的使用可以根据实际需求进行调试,帮助我们查找并解决程序中的错误。

2. 使用断点进行逐行调试除了输出调试信息,我们还可以在代码中设置断点,以实现逐行调试。

断点可以让程序在指定位置停止执行,我们可以查看变量的值、调用堆栈和执行路径等信息。

要设置断点,只需单击代码编辑器中的行号区域,或者通过快捷键F9来切换断点的状态。

当程序执行到断点时,会自动停止,允许我们检查代码并进行调试。

可以通过单步执行(F8键)、恢复(F5键)、观察窗口等功能来逐行调试代码。

3. 处理常见错误在VBA编程过程中,我们经常会遇到一些常见的错误。

下面列举了一些常见错误,并提供相应的解决方案。

1)对象或块变量未设置 (Error 91)这种错误通常发生在我们尝试访问一个未初始化的对象或者未分配内存块的变量上。

VB常见错误类型和程序调试方法

VB常见错误类型和程序调试方法
精品课件 上一页 下一页 返回
10.3 程序调试方法
在运行应用程序时进入中断模式的方法如下: (1)按C trl+Break键。 (2)选择“运行”|“中断”命令。 (3)单击标准工具栏上的“中断”按钮。 在下列情况下自动进入中断模式: (1)语句中产生一个运行错误(“选项”对话框“通用”选项卡上的
精品课件
返回
10.2 程序中逻辑错误的特点
逻辑错误的特点是源程序在语法上没有问题,也没有出现无效操作 等类型的运行错误,但是程序未按预期方式执行,产生了不正确的 运行结果。
逻辑错误只能通过对程序运行结果进行分析才能被发现。
精品课件
返回
10.3 程序调试方法
调试程序是一件复杂的工程,不但要求程序员对系统设计结果非常 熟悉,思路清晰,更需要不断地在实践中积累经验。
精品课件
下一页 返回
10.3 程序调试方法
并允许程序员在任何时候快速查看应用程序的状态,显示变量和属 性的值,方便程序员发现程序中存在的问题。
当一个应用程序处于中断模式时,可以完成下列工作: (1)修改应用程序中的代码。 (2)观察应用程序的接口条件。 (3)确定已被调用的活动过程。 (4)监视变量、属性的值。 (5)查看或控制应用程序运行的下一个语句。 (6)立即运行VB语句。 (7)手工控制应用程序的运行。
这里程序调试的基本方法包括:中断模式调试、调试工具调试和编写 错误处理程序。重点介绍前两种方法。
1.中断模式
在VB集成开发环境中,程序有设计、运行和中断三种模式VB的标题 栏会列出当前的模式。在设计模式下,程序员可改变应用程序的设 计和代码,但所作不能改变对应用程序运行的影响;在运行模式下, 程序员可以监视应用程序的行为,但不能直接修改代码;中断模式可 以暂停应用程序的执行,

VBA的错误处理与调试

VBA的错误处理与调试

VBA的错误处理与调试VBA(Visual Basic for Applications)是一种在Microsoft Office应用程序中使用的宏语言。

在编写VBA代码时,出现错误是一种常见的情况。

因此,了解和掌握VBA的错误处理和调试技巧是非常重要的。

本文将介绍VBA中常见的错误类型以及如何处理这些错误,并提供一些调试技巧来帮助开发人员在编写和调试VBA代码时更加高效和准确。

错误类型在VBA中,我们常见的错误类型包括语法错误、运行时错误和逻辑错误。

语法错误是由于代码中违反了VBA语法规则而引发的错误。

这些错误通常在编译代码时被捕获,使得代码无法运行。

语法错误主要是由于拼写错误、缺少关键字、使用无效的操作符等引起的。

当出现语法错误时,VBA通常会显示一个弹出对话框,告诉你具体的错误类型和位置。

运行时错误是在代码执行期间发生的错误。

这些错误通常是由于无效或不可用的操作,如除以零、访问不存在的对象等引起的。

当遇到运行时错误时,VBA会停止执行代码并显示错误信息,这就需要开发人员通过错误处理机制来解决它们。

逻辑错误是由于代码中的错误逻辑导致的错误。

这些错误通常是由于错误的条件判断、循环错误或算法错误等引起的。

逻辑错误不会被VBA自动捕获,因此开发人员需要仔细检查代码逻辑并使用调试技术来解决它们。

错误处理为了处理VBA中的错误,我们可以使用On Error语句来设置错误处理程序。

On Error语句有几种不同的形式,下面是其中的一种常见形式:On Error GoTo ErrorHandler在错误处理程序中,我们可以使用Resume语句来控制程序的执行流程。

Resume语句有以下几种使用方式:- Resume:继续执行出错的代码行。

- Resume Next:跳过出错的代码行,继续执行下一行。

- Resume Label:跳转到指定标签处继续执行。

使用On Error语句和Resume语句,我们可以根据不同类型的错误采取相应的措施进行处理。

VB调试与错误处理

VB调试与错误处理

VB调试与错误处理VB程序错误分类(1)编译错误编译错误多数是因为不正确的代码产生的,即在编写程序时书写了错误的语法,从而导致VB编译器无法正确解释源代码而产生的错误,因此也称为语法错误。

一般包括关键字拼写错误、标点符号遗漏、语句搭配不当等。

系统自动检查,错误的代码以红色字显示。

(2)实时错误实时错误是指应用程序运行期间,一条语句试图执行一条不可能执行的操作而产生的错误,也称为运行时错误。

当进入调试时,程序停留在引起错误的那一句上,要求用户修改。

(3)逻辑错误逻辑错误是指程序的运行结果和程序员的设想有出入时产生的错误。

这类错误并不直接导致程序在编译期间和运行期间出现错误,较难发现。

验证应用程序是否存在逻辑错误的惟一方法就是将运行结果与设计方案对照分析。

自动语法检测VB集成环境提供了“自动语法检测”功能。

如果使用了该选项,那么程序人员每书写完一行语句,在键入回车键企图进入下一条语句时,VB编译器就会自动解释该行语句。

当它发现错误时,就会加亮显示出现语法错误的语句并显示一个消息框来解释错误原因并提供帮助。

这样程序员就可以在继续编程之前更正错误了。

设置断点和逐语句跟踪主要有以下常用的工具:a.逐行执行:F8键b.设置断点:F9键c.立即窗体常用的调试技巧:a.事先做好备份b.分离受怀疑的程序c.缩小搜索范围d.结合使用设置断点、逐行执行、立即窗体、 MsgBox语句等断点的设置与取消断点在VB程序的“代码编辑器”窗口中设置,设置后在其窗口的左侧边框中会出现的提示,被设置为断点的代码行将加粗反白显示。

断点设置的方法有以下几种。

(1)用鼠标单击“代码编辑器”窗口中打算作为断点的代码行的左侧边框,使得鼠标成的形状,然后单击鼠标左键。

(2)将光标指向打算作为断点的代码行,然后使用“调试”菜单中的“切换断点”命令。

(3)将光标指针指向打算作为断点的代码行,然后按F9功能键。

要取消断点,可将光标指向定为断点的代码行,其操作方法和设置断点类似。

VB程序调试与错误处理

VB程序调试与错误处理

9.4 错误处理
由于应用环境等的改变,有时程序还会出现错误。例如文 件未找到等。这类“运行时错误”并非致命的错误。 对于这些可预见的错误,可以利用VB的错误处理程序捕 获它,对其进行适当的处理,并使程序继续执行。这样就能够 使开发的软件具有更强的适应性。
9.4.1 错误处理的步骤
(1)利用Err对象记录错误的类型、出错原因等。 (2)强制转移到用户自编的“错误处理程序段”的入口。 (3)在“错误处理程序段”内,根据具体错误进行处理,如 果问题有解决方法,则在处理后返回原程序某处继续执行,否 则,停止程序执行
3. 逻辑错误
逻辑错误使程序运行时得不到预期的结果。这种程序没有 语法错误,也能运行,但却得不到正确的结果。 例如,在一个算术表达式中,把乘号“*”写成了加号 “+”,条件语句的条件写错,循环次数计算错误等 例如,要求10!,若采用: Private Sub Form_Load() Dim t As Integer For i=1 To 10 t=t*i Next i Show :Print t End Sub 运行程序时输出的结果是0 通常,调试程序过程中所花的大部分时间和精力都在逻辑 错误上
3. 逐过程
逐过程执行是以整个函数或过程为一个整体,一次执行。 逐过程与逐语句一样,能够一条语句一条语句地执行代码。把 被调用的函数或过程当作一个语句钮,则VB将连续 执行完该过程的其余部分,返回调用过程的下一条语句并回 复中断模式
5. 本地窗口
9.2 程序工作模式
三种工作模式:设计模式、运行模式和中断模式
1.设计模式
在设计模式下,可以建立应用程序的用户界面,设置控 件的属性,编写程序代码等
2. 运行模式
在运行模式下,可以测试程序的运行结果,可以与应用 程序对话,还可以 查看程序代码,但不能修改程序

VB程序调试及编译方法

VB程序调试及编译方法

VB程序调试及编译方法VB(Visual Basic)是一种高级编程语言,用于开发窗体应用程序和Web应用程序。

在VB编程中,调试和编译都是非常重要的步骤。

调试是指查找和修复程序错误的过程。

当程序无法按预期工作时,调试帮助我们确定错误的原因,并修复它们。

VB提供了许多调试工具和技术,使得调试过程更加简单和高效。

第一种调试方法是使用断点。

在程序中设置断点,可以使程序暂停在指定的位置,以便查看变量的数值、执行路径等。

为了设置一个断点,只需在代码行左侧单击鼠标即可。

当程序运行到断点处时,它将自动停止,并将控制权交给开发人员。

在此停止状态下,可以查看和修改变量的值,并逐步执行程序的余下部分。

第二种调试方法是使用调试输出语句。

在VB中,可以使用Debug.Print语句将信息输出到“立即窗口”中。

通过在代码中插入这些语句,可以在程序运行时输出变量的值、状态信息等。

这对于跟踪程序的执行路径和检查变量的值非常有帮助。

第三种调试方法是使用调试工具。

VB提供了一些强大的调试工具,如“本地窗口”、“观察窗口”、“调试输出窗口”等。

这些工具可以直观地显示变量的值和状态信息,以及程序执行过程中的错误信息。

通过使用这些工具,可以更方便地进行调试和修复错误。

编译是将源代码转换为可执行文件的过程。

在VB编程中,编译是将VB代码转换为可执行的EXE文件或DLL文件的过程。

编译确保代码的正确性,并检查是否存在语法错误和类型错误等。

VB编译器提供了许多编译选项,可以影响编译过程和可执行文件的产生。

例如,可以选择生成Debug版本还是Release版本,选择生成32位程序还是64位程序等。

为了编译VB程序,可以使用VB IDE(集成开发环境)提供的编译选项,也可以使用命令行编译器(VB编译器)。

在VBIDE中,可以通过单击“生成”菜单中的“生成解决方案”选项来编译整个解决方案,或单击“生成”菜单中的“生成”选项来编译当前项目。

编译过程中,编译器将检查代码中的错误,并生成可执行文件。

程序调试与错误处理

程序调试与错误处理
10.2 程序调试
VB集成开发环境提供了多种程序调试工具,主要包括:设置断点、单步运行、监视窗口和立即窗口等,这里主要介绍程序调试工具及调试方法和技巧。 程序调试工具栏如图所示:
启动/继续
中断
结束
切换断点
逐语句
逐过程
跳出
本地窗口
调用堆栈
立即窗口
监视窗口
快速监视
10.2 程序调试
10.2.1 VB的中断模式
2.2 调试窗口
1
在中断模式下,可用鼠标指向要观察的变量或对象属性,以直接显示其值,另外通过立即窗口、本地窗口、监视窗口和调用栈窗口等,可以监视程序运行过程中变量的变化情况。
2
使用的主要方式有: Debug.Print [输出列表]
在程序代码中,使用DEBUG.PRINT方法,可以将输出列表中的各项值输出到立即窗口中。 立即窗口中使用Print或?语句
10.3 错误处理
10.3 错误处理
10.3.1 错误陷井
1)错误陷阱的激活 错误陷阱用于捕获错误,它的使用有两种形式。 ① On Error Goto<行号|标号> 功能:打开错误捕获功能。该语句执行后,运行中出现错误时,将控制权转移到本语句指向的错误处理程序去执行。该语句通常作为过程或函数的第一条可执行语句。 ② On Error Resume Next 功能:打开错误捕获功能。当发生错误时,转到产生错误的下一条语句处执行。
03
Err、Erl和Error$函数
01
Err函数:返回程序执行时的错误码。错误码为整数值。
02
3)错误处理使用的语句和函数
10.3 错误处理
Private Sub Form_Click()

VB程序调试与错误处理初步

VB程序调试与错误处理初步

/webnew/
14.1.3 逻辑错误
逻辑错误指的是程序可以执行,但就是得不到用 户所希望的结果。这并不是程序语句的错误,而是 由于程序设计时本身存在的逻辑缺陷而导致的。如 定义了错误的变量类型,或程序中出现了不正确的 循环次数或死循环等等。 大多数逻辑错误不容易发觉是在哪一条语句发生 的,而且错误产生的原因与产生错误结果的语句之 间可能隔有很多语句。因此,对于逻辑错误一般要 使用单步执行和监视的方法来查找错误的根源。
/webnew/

14.1.1 语法错误
由于我们不小心将语句:For j=1 To 100书写成 For j=1 100(漏掉了To),则当用户按下Enter键的时 候,Visual Basic就会立刻测出这样的错误,会提示 用户“缺少To”,如下图所示。
这段程序的功能是拷贝“A”盘中的“readme.txt”文件到“D”盘。假设 当前驱动器是“C”盘,如果在执行语句“ChDrive ”A“”时出错,就忽略此 项操作,继续留在“C”盘。并将“C”盘当前目录下的“Readme.txt”文件 拷贝到“D”盘,如果在“FileCopy ”readme.txt“, ”d:\read.txt“”语句再出现错 误,那么干脆什么都不做自动退出此过程。 3. On Error Goto 0 此语句用来关闭错误捕获功能。当用户确定已经没有错误产生或者错 误已经得到处理,就可以关闭错误捕获功能。要注意,错误捕获功能一旦 被激活,将保持到过程结束,如果我们要在过程结束之前就关闭此功能, 应使用“On Error Goto 0”语句。
/webnew/
14.1.2 运行错误
运行错误是指在运行程序的时候发生的错误。这些错误在编写的过 程中,因为它们符合语法规则,所以不会被识别出来,也不会在编译的 时候被发现。它们往往是由于进行了某种错误的操作造成的。 例如,下面一段代码: Private Sub Command1_Click() Dim number As Integer Dim total As Double Dim aver As Double total = Val(Text1.Text) number = Val(Text2.Text) aver = total / number Text3.Text = aver End Sub
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Dim r As VbMsgBoxResult On Error GoTo notready ChDrive "A" Exit Sub notready: r = MsgBox(" 请 插 入 软 盘 !", vbRetryCancel + vbCritical, "缺少软盘") If r = vbRetry Then Resume End Sub
运行错误是指在运行程序的时候发生的错误。这些错误在编写的过 程中,因为它们符合语法规则,所以不会被识别出来,也不会在编译的 时候被发现。它们往往是由于进行了某种错误的操作造成的。
例如,下面一段代码: Private Sub Command1_Click() Dim number As Integer Dim total As Double Dim aver As Double total = Val(Text1.Text) number = Val(Text2.Text) aver = total / number Text3.Text = aver End Sub
14.1.2 运行错误
该程序在计算平均值时,很有可能在没有提供参数number,或者 提供了不合法的值,则会产生除数为0的错误,从而引起程序的崩溃。 如下图所示:
这时,用户可以单击【结束】按钮来结束程序,也可以单击 【调试】按钮来发现是哪一条语句发生了错误,以便于修改。
14.1.3 逻辑错误
逻辑错误指的是程序可以执行,但就是得不到用 户所希望的结果。这并不是程序语句的错误,而是 由于程序设计时本身存在的逻辑缺陷而导致的。如 定义了错误的变量类型,或程序中出现了不正确的 循环次数或死循环等等。
这就是处理运行时错误的方法,我们将这个过 程称为错误捕获(Error Trapping)。
14.2.2 激活错误捕获功能
在我们捕获运行时错误之前,首先要激活错误捕获功能,这项任 务是由On Error语句来完成的。On Error语句共有3种格式。 1. On Error Goto 行号
此语句的功能是激活错误捕获,并将错误处理程序指定为从“行 号” 位置开始的程序段。 例如: Private Sub Form_Load()
在Visual Basic中,允许使用错误处理方法来对可能出现的错误进行预先 处理。所谓错误处理,就是提供发生错误时执行的代码,也相当于是程序 运行的一部分。当一个错误发生的时候,应用程序应该可以探测到这一个 错误,并且进行相应的错误处理。用户应当在可能产生错误的地方放置错 误探测语句,同时,在同一个程序中放置错误的处理代码。通常含有错误 的探测捕捉和处理 ▪设置错误的捕捉陷阱,即在程序中可能出现错误的地方放置捕捉语句来捕 获产生错误的语句。 ▪编写错误处理程序,即当程序中出现错误的时候,程序将运行用户指定的 程序。 ▪退出错误处理程序,即在处理错误之后,应该恢复原来的一些参数,然后 让程序继续正常地运行下去。
大多数逻辑错误不容易发觉是在哪一条语句发生 的,而且错误产生的原因与产生错误结果的语句之 间可能隔有很多语句。因此,对于逻辑错误一般要 使用单步执行和监视的方法来查找错误的根源。
14.2 错 误 处 理
对于程序中可能出现的错误都要进行处理,否则会使应用程序崩溃。但 是,有的错误是用户无法避免的。例如,当光驱中没有光盘时,用户访问 了光驱,这时,系统会产生一个“设备没有准备好”的错误。
本章主要介绍:VB程序错误的种类、错误处理的 处理初步
14.1 错误的种类 14.2 错误处理 14.3 代码调试 14.4 小结 14.5 思考与练习
14.1 错误的种类
14.1.1 语法错误 14.1.2 运行错误 14.1.3 逻辑错误
For j=1 100 …… End Sub
14.1.1 语法错误
由于我们不小心将语句:For j=1 To 100书写成 For j=1 100(漏掉了To),则当用户按下Enter键的时 候,Visual Basic就会立刻测出这样的错误,会提示
用户“缺少To”,如下图所示。
14.1.2 运行错误
再如,当我们的程序要从软盘中读取文件时,如果软驱中 没准有软盘,就会产生运行时错误“Disk not ready”(磁盘没有 备好)。
14.2.1 错误捕获
通过这些例子可以看出,运行时错误是无法避 免的。但是,一旦出现运行时错误,将造成程序崩 溃。因此,我们必须对可能发生的错误进行处理。
许多运行时的错误只能靠用户来解决,比如插入 软盘。因此,我们必须在系统发出错误之前,截获 错误,在错误处理程序中提示用户采取措施,是解 决问题还是取消操作。如果用户解决了问题(如插 入了软盘),我们的程序就能够继续执行,如果用 户选择取消操作,我们就可以跳过这段程序,而继 续执行后面的程序。
14.2 错 误 处 理
14.2.1 错误捕获 14.2.2 激活错误捕获功能 14.2.3 编制错误处理程序
14.2.1 错误捕获
当程序中的某行代码试图执行一项非法的操作时,将产生运行时 错误(Run-Time Error)。例如,当我们的程序需要打开某个特定的文件 时,如果这个文件被误删了,就会产生运行时错误“ found”(文件未 找到),如下图所示。
14.1.1 语法错误
语法错误是存在于代码中的语言结构方面的错误。比 如,拼写错误、缺少操作对象、不符合语法规则等错误都 属于语法错误。
例如,我们要输入下列代码: Private Sub Form_Load() Dim i As Integer Dim j As Integer Dim sum As Integer sum = 0 For i = 1 To 100
第14章 VB程序调试与错误处理初步
可选内容(时间:2次课,4学时)
第14章 VB程序调试与错误处理初步
教学提示:本章主要介绍VB的程序调试技术,其 中包括VB编程过程中常见的错误类型的产生和表 现,以及利用VB提供的调试工具和语句对程序错 误进行捕获、处理和修改的方法。VB为广大用户 提供了功能强大的程序调试工具,使用户能够迅 速排除编程中出现的问题。
相关文档
最新文档