VBA子|如何在VBA代码中调用子过程?

Excel VBA子过程

VBA中的SUB 也称为子例程或包含所有代码的过程,它是VBA中的内置语句,使用时会自动为我们提供end sub语句,中间部分用于编码,sub语句既可以是public也可以是私有,子过程的名称在VBA中是必需的。

Sub表示VBA中的Sub Procedure。子过程用于执行以代码形式提供的一组特定任务。根据VBA语言,它仅执行代码中提到的任务,但不返回任何类型的值。

如何编写VBA子过程?

您可以在此处下载此VBA子过程模板– VBA子过程模板

为了编写子过程代码,重要的是了解子过程的结构。下面是结构

 [过程名称](参数)[需要做什么?]) 

要开始子过程,我们需要使用单词“ Sub”,并且需要给Sub指定一个名称作为过程名称。过程名称不过是我们的宏名称。在VBA子过程中,括号内通常没有参数。

写入Sub过程名称后,我们需要编写需要完成的任务。然后出现End语句,即End Sub。

Example#1 –简单的子过程

现在看一下简单的子过程编写方法。

步骤1: 在模块中启动单词“ Sub”。

第2步: 现在,命名宏名称或过程名称。

第三步: 给子过程指定名称后,只需按Enter键,它将自动应用end语句。

现在我们可以看到两件事,一是子过程的开始,二是子过程的结束。为了更好地理解,我们可以将其称为“头部”和“尾巴”。

在宏的开头和结尾之间,我们需要编写代码以执行某些任务。

Example#2 –简单的子例程任务

好的,现在我们将在这里看到如何执行一些简单的操作。

假设您要在单元格A1中插入值“ Excel VBA”。

步骤1: 通过使用上述方法启动子过程。

代码:

 子动作1()结束子 

第2步: 要访问单元格A1,我们需要使用单词RANGE。

代码:

 Sub Action1()范围(End Sub 

第三步: 它询问您要引用的cell1是什么?在这种情况下,它是一个A1单元。

代码:

 Sub Action1()范围(“ A1”)结束Sub 

第4步: 我们需要插入值“ Excel VBA”,因此通过在范围后加一个点来选择VALUE属性。

代码:

 Sub Action1()Range(“ A1”)。Value End Sub 

当您开始输入VALUE一词时,您会看到许多选项,这些选项称为IntelliSense列表,该列表会根据您输入的内容进行预测。这就像当我们开始键入公式时公式将如何出现在工作表中一样。

步骤5: 选择“ VALUE”后,放置一个等号,并在双引号中输入值“ Excel VBA”。

代码:

 Sub Action1()Range(“ A1”)。Value =“ Excel VBA”结束Sub 

至此,我们完成了。

现在我们需要执行此任务。要执行我们返回的任务,我们需要通过在Visual Basic编辑器窗口中按“运行”按钮来运行此代码。

我们也可以通过将光标置于宏代码内来按下excel快捷键。

一旦运行代码,您将在单元格A1中获得值“ Excel VBA”。

VBA子例程的类型

在子过程中,我们还有两种类型,一种是“公共子过程”,另一种是“私有子过程”。

“公共”和“私人”这两个词是可访问性修饰语,使我们可以不同地使用它们。

  • 公开子程序 允许我们在工作簿的所有模块中使用该过程。
  • 私人分程序 允许我们仅在当前模块中使用该过程,而在其他任何地方都不能使用。

例如,查看下面的公共代码图像,该图像位于模块1中。

现在在模块2中,我也可以使用此子过程。

动作1 是我们在模块1中使用的子过程的名称。

在模块2中,我已将其称为“ Call Action1”。这意味着,当您运行子过程时,它将从模块1执行子过程Action1。

私人分程序 无法从其他模块访问,我们只需要从同一模块访问它们。