ch4 自定义用户窗体.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ch4 自定义用户窗体

第四章 自定义用户窗体 本章包括 如何书写Sub过程及Function函数 如何向过程或函数传递参数 过程或函数的调用与调试 在过程或函数中使用错误处理技术 在过程或函数中使用Windows API VBA编程示例与技巧 一些有用的VBA过程与函数 在C语言编程中,无论是否返回值,都称为函数。与C语言编程不一样的是,不返回值的称为Sub过程,而返回值的则称为Function函数。与前面的章节不一样的是,自本章开始,将沿用这一习惯,即称没有返回值的Sub为过程,有返回值的Function为函数。 本章将介绍Sub和Function的书写,参数的声明与传递,调用与调试,使用错误处理技术,使用Windows API,最后将介绍一些有用的编程示例与技巧。 4.1 Sub过程与Function函数 确定是使用Sub关键字还是Function关键字,看这个过程是否需要返回值。当需要返回值时,使用Function,否则使用Sub关键字。 4.1.1 Sub过程 书写Sub过程的语法如下: 4.1.2 Function函数 Function函数的书写格式与Sub大致相同,不同之处在于Function函数需要返回一个值。Function的语法如下: [Public | Private] Function 函数名(参数表) As 返回数据类型 语句系列1 [Exit Function] 语句系列2 函数名 = 返回值 End Function 下面以一个返回两数和的函数Add为例: Public Function Add(a As Integer, b As Integer) As Integer Add = a + b End Function 调用Function的方法有两种: 从一个Sub过程中调用 在单元格的自定义公式中调用 控制函数的重新计算 在工作表公式中使用自定义函数的时候,何时被重新计算呢? 自定义函数的行为类似于Excel内置的工作表函数。通常,只有当必须要这么做的时候(只有在修改函数的任意参数的时候才必须要这么做)才重新计算自定义函数。然而,可以强制函数更频繁地进行重新计算。向Function过程添加如下语句之后,无论何时重新计算工作表,都会重新计算函数。如果是在自动重算的模式下,无论何时更改任何的单元格,都会发生重新计算的动作。 Application.Volatile True Application对象的Volatile方法只有一个参数(值为True或者False)。将Function过程标记为易失性函数,从而无论何时工作表中的任意单元格重新计算,都会强制计算该函数。 例如,可以编写如下的动态随机函数: Public Function DynRndNumber(max As Integer, min As Integer) As Integer Application.Volatile (True) DynRndNumber = Int(max - min + 1) * Rnd + min End Function 该函数返回一个介于max和min之间的随机数(整数)。 为了强行实施整个重新计算,也凶手非易失性自定义函数,可以按Ctrl + Alt + F9快捷键。 _______________________________________________________________________________ 4.2 使用错误处理技术 当VBA过程正在运行的时候,有可能会出现错误。这些错误可以分为“语法错误”(在执行过程之前必须要纠正)和“运行时错误”两种。这一节将讲述如何正确地处理这些错误。 为了使得错误处理过程起作用,必须关闭“发生错误则中断”设置。在VBE中,选择“工具”→“选项”命令,然后在“选项”对话框中单击“通用”选项卡。如果选中了“发生错误则中断”选项,那么VBA将忽略错误处理代码。通常都希望使用“遇到未处理的错误时中断”选项。 4.2.1 捕获错误 可以使用On Error语句指定错误发生时要采取的措施。基本上有两种办法: 忽略错误并允许VBA继续执行代码。可以在以后检查Err对象,然后确定错误所在以及必要时所采取的动作。 跳转到代码中特殊的错误处理节,进而采取动作。这一节代码位于过程的末尾,还用标签进行了标识。 4.2.2 错误处理示例 4.2.3 对工作表进行排序处理的示例 这是一个对当前活动工作簿中所有工作表进行排序的示例,请注意体会其中的错误处理方法。 4.4 深入讨论函数 在继续学习之前,有必要对VBA函数的参数与返回值进行一些有益的讨论。比如说,如何向一个函数传递一个数组参数,向函数传递可选参数,从函数返回数组,从函数返回错误值,以及接收

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档