看看VBA的Sub过程和Function过程
发布时间:2023-12-11 23:17:02
经过前面的一系列文章的示例学习,我们应该已经熟悉了Sub过程。通常我们看到的Sub过程的基本形式是:
Sub 过程名称()
[此处放置代码语句]
Exit Sub
End Sub
这也是我们在编写大多数VBA程序时用到的结构。其中:
过程名称为编程人员给过程命名的名称,其命名规则与变量名称的规则相同。在同一模块中的过程名称不能同名。
Sub和End Sub配套出现,它们之间构成一个完整的程序过程。
过程中的代码可以放置ExitSub语句,表示提前退出过程。
通常,在VBE编辑器中,写下sub和过程名称,按下回车键后,会自动添加End Sub语句。Sub过程用来执行操作,而Function过程可以返回值,创建自定义函数。Function过程的基本语法形式为:
Function 过程名称()
[此处放置代码语句]
[过程名称= 表达式或值]
[Exit Function]
[此处放置代码语句]
[过程名称= 表达式或值]
End Function
可以看出,其形式与Sub过程的基本形式相似,只是将关键词Sub换成了Function。注意:
在Function过程的代码语句中,应至少有一次把某个确定的值赋值给函数过程的名称。
建议避免使用Excel内置函数名称、单元格引用、单元格区域的名称作为函数过程的名称。
Function过程不能对单元格区域进行修改,不能执行与对象相关的操作。
Function过程可以应用在工作表公式中,就像Excel的内置函数一样;Function过程也可以应用在VBA代码中。
过程代码中可以放置ExitFunction语句,表示提前退出过程。
按惯例,方括号表示可选。
下面的示例代码统计当前可见工作簿的数量:
Function lWkbNum()
Dim lCount As Long ‘声明计数变量
Dim wkb As Workbook ‘声明工作簿对象变量
‘遍历应用程序中的工作簿
For Each wkb In Application.Workbooks
‘如果为可见工作簿则增加1
If wkb.Windows(1).Visible Then
lCount = lCount + 1
End If
Next wkb
‘将结果赋值给函数名
lWkbNum = lCount
End Function
就像运用Excel内置函数一样,在工作表中输入“=lWkbNum()”,显示当前已打开的可见工作簿的数量,如下图所示。
图:在单元格A1中输入=lwkbnum(),显示2,即当前打开的可见工作簿数为2个
下面的代码在Sub过程中调用自定义的lWkbNum函数:
Sub testlWkbNum()
MsgBox “当前可见工作簿的数量为:”& lWkbNum
End Sub
运行后显示如下图所示的消息框:
由于之前的一系列文章中都是使用的Sub过程作为的例子,所以本文详细介绍了Function过程的最基础知识,给您一个初步的认识。
不管是Sub过程还是Function过程,都可以带有参数,Function过程还可以设置返回值的类型,我们将在后续逐步深入这些知识。
猜你喜欢
- 在WORD中编辑了一段文字,你想有多少个文字,不可能一个个去数字吧!WORD有自动统计字数的功能,藏的有一点有深而以,下面我就来演示word
- 打开已有Word文档时,还可以用副本的方式打开。以副本打开文档,即使在编辑文档过程中文档损坏或者对文档误操作,也不会对源文档造成破坏,提高使
- 使用Word编辑了文档,但图形和表格在打印后不是很清晰,所以下面小编就为大家介绍在word表格中怎么打印出清晰图形方法,有需要的朋友可以参考
- WPS热点如何关闭工具/原料WPS软件一周不在弹出设置在WPS热点右上角点齿轮图标——选“一周不在弹出”。(这里我的会自动跳回到当天显示)
- 在日常工作中word的使用必不可少,而往往来说一些小技巧的使用会让你在同事们的心目中迅速成为大师级人物。其实这些技巧掌握起来都非常简单,下面
- 一、cos函数的用法函数功能:返回给定角度的余弦值。这和数学上的知识是一致的。函数语法:COS(number)Number 为需要求余弦的角
- 新安装win10系统的小伙伴肯定感觉很新鲜,很想赶快对win10有个认识。特别是对一些特色的功能属性想早点了解,小编就来告诉大家功能包括有剪
- Microsoft Office 是用户最多的办公软件之一,而其中的Excel程序,则是在数据处理方向比较方便的程序。比如一大堆的数据中如何
- word修订模式可以直观的显示出word文档中所做的修订,并可以选择是否接受这些修定,那么下面就由小编给大家分享下word使用修订模式的技巧
- win10系统是一个非常优秀的智能系统。强大的兼容性几乎允许用户同时在win10系统上运行各种绿色软件。然而,随着时间的推移,许多用户在使用
- 目标效果下图Word文档中输入了东晋文学家陶渊明的诗作《饮酒·其五》,其中第一行诗名《饮酒·其五》使用了黄色阴影文本效果进行突出显示。&nb
- 绘制斜线方法一:word2003版本首先把光标移到要添加斜线表头的表格中,然后点击“表格”菜单中的“绘制斜线表头”,这时在“插入斜线表头”窗
- word如何设置的背景图片让文章更加丰富的小技巧,今天,小编就教大家如何设置背景图片的方法!2003word设置背景图片步骤如下:开一个wo
- 我相信每个人都熟悉“远程桌面控制”。 尽管它可以很好地控制其他计算机,但是不能远程打开它。 这意味着如果另一方的计算机关闭,我们将无法执行远
- 许多使用win10的用户都遇到过更新失败,无法打开计算机的情况。事实上,这不仅是系统问题,也是硬件问题。让我们看看详细的解决方案。win10
- 在word中如何使用制表位快速对齐文本?word是一个非常好用的办公软件。在word中想要使用制表位快速对齐文本,该怎么操作?下面就是wor
- 在安装Office2007过程中,当安装进度还未结束,系统提示『错误 1309。读取文件“C:WINDOWSInstaller$PatchC
- 有朋友在使用word时会发现我们设置的单倍行距相同但行距不同了,这个问题是有一点其怪了,同样的文档同样的操作显示就是不一样了,其实这个问题是
- Word文档排版中经常会使用到虚线,那么你会设置虚线吗?今天给大家分享排版中常用到的几种虚线设置技巧。1、添加分栏竖向虚线在分栏的页面上,添
- 在很多小伙伴刚安装win10的时候系统往往是自动更新的,但是很多用户不喜欢自动更新而且有时候容易更新失败,那么该怎么取消更新呢?下面就一起看