Excel VBA程序开发自学宝典(第2版).doc

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第06章 编写SUB过程及开发函数 VBA的主体结构就是过程。VBA包括子过程、函数过程和属性过程三种,本书主要介绍子过程(也称Sub过程)和函数过程(也称Function过程)。 本章要点 认识过程 Sub过程 Function过程 关于过程参数 开发自定义函数 编写函数帮助 6.1 认识过程 VBA中每一个程序都包含过程。录制的宏是一个过程,一个自定义函数也是一个过程。掌握好单个过程的编写思路,就可以组合成一个大中型插件或者专业程序。 6.1.1 过程的分类与调用方式 过程主要分为三类:子过程、函数过程和属性过程。这三类过程的格式如下。 Sub 子过程() …… End Sub Function 函数过程(rng As Range) …… End Function Property Get 属性过程() As Variant …… End Property 本书主要讲述Sub子过程和Function函数过程的开发。 Sub过程是VBA中应用最广的过程,录制宏所产生的过程就是Sub过程。Sub过程的执行方式包括五种。 1.【Alt+F8】执行 如果在工作表命令窗口、ThisWorkBook命令窗口或者标准模块窗口中存在Sub过程,那么在工作表界面可以通过快捷键【Alt+F8】来执行该过程。 假设在VBE界面中的Sheet1代码窗口中有一个Sub过程“汇总”,在模块1中有一个名为“新建菜单”的Sub过程,那么通过快捷键【Alt+F8】打开“宏”对话框后,将在对话框中产生两个可执行程序名,其中工作表命令窗口的Sub过程会连同工作表名一起出现在宏名列表中,而模块中的过程则仅仅列出过程名。用户选择目标程序并单击【执行】按钮即可启动Sub子过程。 2.快捷键执行 Sub过程可以与某个快捷键进行关联,在后续的使用中就可以利用这个快捷键来调用对应的过程。 设置Sub过程的快捷键主要有两种方式:利用宏对话框设置及用VBA代码指定。后者在本书其他章节将会讲述,在此演示一下“宏”对话框设置宏的快捷键的方法: 假设VB工程中有两个名为“汇总”和“新建菜单”的Sub过程,在工作表界面中按下快捷键【Alt+F8】调出图6.1所示对话框,然后选择“新建菜单”,并单击“选项”按钮,在弹出的“宏选项”对话框中指定快捷键,如图6.2所示。图中设计宏程序“新建菜单”的快捷键是【Ctrl+q】。 图6.1 “宏”对话框 图6.2 设置Sub过程的快捷键 3.按钮执行 在工作表中建一个按钮,并将按钮与Sub过程关联,从而实现单击按钮执行程序。 将按钮关联到Sub过程的步骤为: 1.单击菜单【开发工具】→【表单控件】→【按钮】; 2.在工作表中按下左键并向右下方拖动,从而绘制一个控件按钮; 3.在弹出的对话框中选择“新建菜单”,如图6.3所示; 4.返回工作表后即可单击名为“按钮1”的按钮来执行程序“新建菜单”。 图6.3 关联过程与按钮 4.菜单调用 最常见的是编写一个自定义菜单或者工具条来调用Sub过程。菜单与工具条的设计方法参见本书第19章及第20章。 5.事件引发 对于部分需要自启动的程序,通常利用事件引发,不需要人工干预。例如工作簿开启时就自动执行某程序,或者关掉窗体、鼠标移过窗体时执行某程序…… 对于事件过程的运用参见本书第8章。 6.工作表中使用公式调用 Function过程即自定义函数,可以像使用内置的工作表函数一样在公式中使用。 调用Function过程的步骤如下: 1.单击菜单【插入】→【模块】; 2.在模块中录入以下代码: Function 成绩(rng) 成绩 = IIF(rng = 60, 及格, 不及格) End Function 3.返回工作表中,在A1输入数值50,在B1输入公式: =成绩(A1) 可以发现公式可以像内置函数一样运行,它返回“不及格”,正是期望的结果。 6.1.2 插入过程的方式 编写过程时可以手工录入代码,也可以让利用VBA提供的列表自动产生程序外壳。 一个Sub过程分为程序外壳部分和主体部分。如图6.4所示。 图6.4 Sub过程的外壳与主体部分示意图 其中外壳部分可以手工录入,也可以利用VBE提供的方式完成。 1.非事件过程 对于非事件的Sub 过程,VBA提供了一个专用窗体来选择性录入过程的外壳。具体步骤如下: 1.在VBE界面中单击菜单【插入】→【模块】; 2.单击菜单【插入】→【过程】打开“添加过程”对话框; 3.在“名称”框中录入“汇总”,并将“类型”选择“子过程”,将“范围”设为“私有的”,如图6.5所示。然后单击“确定”按钮。 图6.5 添加Sub过程外壳图 执行以上程序后在模块中可以看到产生的代码为

文档评论(0)

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

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

1亿VIP精品文档

相关文档