VBA ARRAY 函数

17 Mar 2025 | 5 分钟阅读

在任何编程语言中,数组都用于将一组相似的对象收集在一起。 相同的概念适用于VBA。 在VBA中,数组主要用于在变量中存储多个值。

VBA包含九个不同的数组函数。 本教程将介绍有关VBA数组函数的详细信息,包括其定义,语法,参数,返回类型以及解释如何使用VBA ARRAY函数编写宏代码的不同示例。

什么是VBA数组函数?

VBA数组函数返回一个包含相似数据类型数组的变体。 此函数用于在宏模块中快速轻松地初始化数组。 VBA数组函数通常用于在变量中存储多个值。

VBA数组函数从逗号分隔的元素列表中创建一个Variant VBA数组。 如果未提供任何参数,则会创建零长度的数组。

语法

参数

Arglist(必需):此参数表示一个逗号分隔的元素列表,这些元素被指定为Variant中包含的数组的值。 如果未传递任何参数,则会创建零长度的数组。

返回

VBA *Array function* 返回一个包含数组的变体。

要记住的事情

  • 使用数组函数,您可以存储两种类型的数组,即二维数组和多维数组。
  • 数组的定位从0而不是1开始。 Arr(0) 表示第一行和第一列。

示例

#VBA 数组示例 1:使用VBA数组函数存储字符串值

按照分步指南使用VBA数组函数存储字符串值

步骤1: 转到您的Excel工作簿。 通过单击开发人员窗口-> Visual Basic编辑器或直接单击快捷键Alt + F11来打开Visual Basic窗口。

步骤 2:将显示 VB 编辑器窗口。 下一步是创建一个模块。 从功能区选项卡中单击插入 -> 单击模块。

VBA ARRAY Function

步骤3: 将插入一个模块。 我们只在此模块窗口中编写宏。 通过输入程序的名称以及变量的声明来启动程序。

请参考以下给出的宏代码

步骤4: 接下来,我们将调用Array函数,并在其参数中传递三个字符串元素。 稍后,我们将使用MsgBox打印arr(0),aar(1)和arr(2)。

在此代码中,我们使用了UBound和LBound函数来计算数组长度。

请参考以下给出的宏代码


VBA ARRAY Function

输出

通过单击VBA功能区工具栏上的“运行”选项或按F5键来运行宏。 您会注意到Excel会立即显示MsgBox。

VBA ARRAY Function

单击“确定”,VBA将打开另一个MsgBox,显示数组大小。

VBA ARRAY Function

#VBA 数组示例 2 - 另一个数组函数内的数组函数

按照分步指南使用VBA数组函数存储字符串值

步骤1: 转到您的Excel工作簿。 通过单击开发人员窗口-> Visual Basic编辑器或直接单击快捷键Alt + F11来打开Visual Basic窗口。

步骤 2:将显示 VB 编辑器窗口。 下一步是创建一个模块。 从功能区选项卡中单击插入 -> 单击模块。

VBA ARRAY Function

步骤3: 将插入一个模块。 我们只在此模块窗口中编写宏。 通过输入程序的名称以及变量的声明来启动程序。

请参考以下给出的宏代码

步骤4: 接下来,我们将调用Array函数,并在其参数中传递三个字符串元素。 稍后,在同一个数组函数中,我们将调用另一个数组函数并传递其参数。

请参考以下给出的宏代码


VBA ARRAY Function

输出

通过单击VBA功能区工具栏上的“运行”选项或按F5键来运行宏。 您会注意到Excel会立即显示MsgBox。

VBA ARRAY Function

单击“确定”,VBA将打开另一个MsgBox,显示另一个输出

VBA ARRAY Function

#VBA 数组示例 3 - 使用内置数组函数创建一个自定义的月份函数。

在以上两个示例中,我们已经看到了如何使用数组函数,它们的语法,如何添加元素以及如何打印它们。 现在,我们将看到如何使用Array函数创建一个自定义的VBA函数。

按照分步指南使用VBA数组函数存储字符串值

步骤1: 转到您的Excel工作簿。 通过单击开发人员窗口-> Visual Basic编辑器或直接单击快捷键Alt + F11来打开Visual Basic窗口。

步骤 2:将显示 VB 编辑器窗口。 下一步是创建一个模块。 从功能区选项卡中单击插入 -> 单击模块。

VBA ARRAY Function

步骤3: 将插入一个模块。 我们只在此模块窗口中编写宏。 使用Function关键字启动程序,后跟函数名称。

请参考以下给出的宏代码


VBA ARRAY Function

步骤4: 完成后,保存您的宏并关闭。 转到您的Excel工作表,然后开始键入函数名称。 令您惊讶的是,新函数将以Months_List的名称显示在您的工作表中。

请参考下图

VBA ARRAY Function

步骤5: 打开该函数并按Enter按钮。 该函数将返回第一个月名称,即1月。 在新单元格中第二次应用该函数仍只会返回1月作为输出。

VBA ARRAY Function

要一起提取所有12个月,您必须在一行中选择12列。

VBA ARRAY Function

由于它是一个自定义函数,因此我们需要仅将公式作为数组公式关闭。

VBA ARRAY Function

因此,按住Ctrl + Shift + Enter。 同一个公式将复制到所有选定的单元格。 结果,该函数将在选定的单元格中填充月份列表。

VBA ARRAY Function
下一主题VBA Len 函数