VBA变量在Excel
在本文中,我们将了解VBA中使用了哪些不同类型的变量以及如何使用它们。
什么是VBA变量?
VBA代表Visual Basic for Applications。它是Microsoft的一种编程语言。它与Microsoft Office应用程序(例如MSExcel,MS-Word和MS-Access)一起使用,而VBA变量是存储在计算机内存或存储系统中的特定关键字。以后,可用于代码中的值并执行。操作员将从系统中获取该值并将其显示为输出。必须为每个变量指定一个名称。本文介绍了VBA变量的基础知识。每个部分均包含相关主题以及简单而有用的示例。
VBA变量命名的一些规则:
。它的第一个字符必须是字母。
。长度不能超过255个字符。
。像空格(),句点(。),感叹号(!),@,&,美元($)和哈希字符(#)之类的字符。
。它不能是VBA的预定义保留关键字之一。
语法:
Sub Demo() Dim var_name As data_type End Sub
让我们进一步了解不同的数据类型及其用法。 Excel读取2种不同类型的数值和非数值数据类型。
数值范围为
的数值数据类型。字节(0到255)
。整数(-32,768至32,767)
。长(-2,147,483,648至2,147,483,648)
。单(-3.402823E + 38至-1.401298E-45)和(1.401298E-45至3.402823E + 38)。
。双重(-1.79769313486232e + 308至-4.94065645841247E-324)和(4.94065645841247E-324至1.79769313486232e + 308)。
。货币(-922,337,203,685,477.5808至922,337,203,685,477.5807)
。小数(最多28个小数位)
非数值数据类型:变量范围和有效名称
。字符串(固定长度,长度范围为1到65,400个字符)
。字符串(可变长度,长度范围为0至20亿个字符)
。布尔值(True或False)
。日期(范围从100年1月1日到9999年12月31日)
。对象(任何嵌入的对象)
。变体(数值和任何与Double一样大的值)
。变体(文本和与可变长度字符串相同)
在VBA中,我们需要先通过分配名称和数据类型来声明变量。在VBA中,变量是隐式或显式声明的。
隐式*:以下是声明为隐式的变量的示例。
label = exceltip.com页面= 4显式:以下是显式声明的变量的示例。
Dim ID作为整数Dim密码作为字符串VBA变量与其他编程语言没有区别。要在VBA中声明变量,请使用关键字“昏暗”。*让我们一步一步地了解有关常用数据类型的更多信息。
整数数据类型
我们列表上的第一个是Integer数据类型。整数数据类型,其值范围为-32,768至32,767。例如,如果变量名var设置为值10,则可以在需要时通过其var_name对其进行使用或调用。
Sub Demo() Dim num As Integer num = 10 range("A1").Value = num End Sub
保存并运行此Demo()代码,以在工作表的A1单元格中获取数值10,如下所示。
现在保存此vba工作簿。
打开宏并运行此代码,如下所示。
单击运行以获取A1单元格中的值为10。
如您所见,如何使用Integer数据类型并调用它们,以返回值。
字符串(固定和可变)数据类型
我们列表中的第二个是非数字数据类型的String数据类型。
用于文本值字符的字符串数据类型,固定范围为1到65,400个字符,可变范围为0到20亿个字符。例如,如果变量pasword设置为值“ abcd”。可以通过名称随时使用或调用它。
Sub Demo() Dim pasword As String pasword = "abcd" range("A1").Value = pasword End Sub
保存并运行此Demo()代码,以在工作表的A1单元中获取文本值“ abcd”,如下所示。
现在保存此代码。
打开宏并运行此代码,如下所示。
单击运行以获取A1单元格中的值为10。
如您所见,如何使用String数据类型并调用它们,以返回值。
货币数据类型
我们名单上的第三个是货币数据类型。值范围从-922,337,203,685,477.5808到922,337,203,685,477.5807的货币数据类型。
例如,如果可变贷款的值设置为10,000。可以在需要时通过其var_name来使用或调用它。
Sub Demo() Dim loan As Currency loan = 10000 range("A1").Value = loan End Sub
保存并运行此Demo()代码,以在工作表的A1单元格中获取数值10,如下所示。
现在保存此vba工作簿。
打开宏并运行此代码,如下所示。
单击运行以获取A1单元中的货币值。
如您所见,代码如何自动使用美元符号将数字值转换为货币,以及如何使用货币数据类型并对其进行调用以返回值。
日期数据类型
第四种常见类型是日期数据类型。用于100年1月1日至9999年12月31日之间的日期值的日期数据类型。例如,如果今天变量设置为日期值。可以在需要时通过其var_name来使用或调用它。
Sub Demo() Dim today As Date Date = "7 Feb 2020" range("A1").Value = Date End Sub
保存并运行此Demo()代码,以在工作表的A1单元中获取2020年2月7日的日期值,如下所示。
现在保存此vba工作簿。
打开宏并运行此代码,如下所示。
单击运行以获取A1单元中的货币值。
如您所见,代码如何自动将单元格值格式化为日期格式以使数值成为日期,以及如何使用日期数据类型并调用它们以返回值。
示例:
上面说明的数据类型是一些最常见的数据类型。现在来看一个示例,以查看整个子例程。
在这里,我们将ID定义为Integer,将paswd定义为String,将收入定义为货币,将退休日期定义为Date。
Sub Demo() Dim Id As Integer, paswd As String, Income As Currency, today As Date Id = 247 paswd = "@bcd" Income = 1500 today = "7 Feb 2020" Range("A1").Value = Id Range("A2").Value = paswd Range("A3").Value = Income Range("A4").Value = today End Sub
将此代码编写为子例程,并运行此Demo()代码以获得以下结果。
如您所见,运行Demo()代码会提取所有值。
在所有编程语言中,我们都有变量访问说明符,用于定义从何处可以访问已定义的变量。 Excel VBA也不例外。 VBA也具有范围说明符。这些作用域说明符可用于设置Excel VBA中变量的可见性/范围。了解有关“ link:/ general-topics-in-vba-excel-vba-variable-scope [vba excel中的可变范围]”的更多信息。
相关文章:
ByRef和ByVal参数当参数作为ByRef参数传递给其他子函数时,将发送实际变量的引用。对变量副本所做的任何更改都将反映在原始参数中。
在Microsoft Excel中使用VBA删除没有确认提示的工作表由于要使用VBA删除工作表,因此您知道自己在做什么。
您想告诉Excel不要显示此警告并删除该死的表。
在Microsoft Excel 2016中使用VBA添加和保存新工作簿在此代码中,我们首先创建了对工作簿对象的引用。然后,我们使用一个新的工作簿对象对其进行了初始化。这种方法的好处是您可以轻松地对此新工作簿进行操作。像保存,关闭,删除等一样,link:/ menus-toolbars-status-bar-in-vba-在Microsoft Excel中使用vba-显示状态栏上的消息Excel VBA状态栏] excel中的状态栏可用作代码监视器。当您的VBA代码很长并且您使用VBA执行多项任务时,通常会禁用屏幕更新,以免看到屏幕闪烁的链接:/使用-vba-in-microsoft-excel [在Microsoft Excel 2016中使用VBA关闭警告消息]|此代码不仅禁用VBA警报,还提高了代码的时间效率。让我们看看如何。
热门文章:
50 Excel快捷方式以提高生产率更快地完成任务。这50个快捷键将使您在Excel上的工作速度更快。
Excel中的VLOOKUP函数在Excel 2016中为COUNTIF使用此惊人的功能对条件进行计数。您无需过滤数据即可计算特定值。
Countif功能对于准备仪表板至关重要。
如何在Excel中使用SUMIF函数这是仪表板的另一个重要功能。这可以帮助您汇总特定条件下的值。