VBA CLng功能|如何使用CLng功能? (带有示例)
Excel VBA CLng函数
“ CLNG”表示“转换为Long”数据类型。整数数据类型限制在-32768到32767之间,因此,要存储到这些变量的任何多余数据,我们都需要在VBA中使用LONG数据类型。
变量是任何编程语言中的关键,而VBA也不例外。不使用变量,编写长代码几乎是不可能的任务。如果变量很重要,那么我们分配给这些变量的数据类型变量就更加重要,因为我们分配给它们的数据类型是我们得到的最终结果。
通常,我们可能会将数字数据分配为“字符串”,这样在进行计算时会引发错误,因此通过使用convert函数,我们可以转换所需的数据类型。常用的转换器功能是vba中的CLng,CInt,CDbl,CDate,CDec。在本文中,我们将向您介绍整数数据类型转换函数“ CLNG”。
句法
以下是CLNG函数的语法。
- 表达 就是要转换为LONG数据类型的值或变量。
笔记: 我们尝试转换的值应该是数字,而不是数值会导致 “运行时错误13:类型不匹配”
在VBA中使用CLng函数的示例
您可以在此处下载此VBA CLNG Excel模板– VBA CLNG Excel模板范例#1
现在,我们将看到如何将文本存储的值转换为“长”数据类型。
例如,请看下面的代码。
代码:
Sub CLNG_Example1()Dim LongNumber as String Dim LongResult As Long LongNumber =“ 2564589” LongResult = CLng(LongNumber)MsgBox LongResult End Sub
因此,现在仔细检查代码以了解其工作原理。
首先,我们分别声明了两个变量String和Long。
代码:
Dim LongNumber作为字符串Dim Long结果作为Long
对于字符串变量,我们为值分配了数字,但用双引号引起来,因此它将把数字“ 2564589”视为字符串,而不是“ Long”变量。现在,对于另一个变量LongResult,我们已使用Clng(LongNumber)函数将字符串存储的数字转换为LONG变量。
下一个消息框将结果显示为LONG数字,该数字将从字符串转换为长数据类型。
输出:
范例#2
现在看下面的代码。
代码:
子CLNG_Example2()Dim LongNumber作为字符串Dim LongResult作为Long LongNumber =“ Long Number” LongResult = CLng(LongNumber)MsgBox LongResult End Sub
这应该给我们结果 “类型不匹配”.
了解错误发生的原因对于修复错误非常重要。当您仔细查看第一个变量LongNumber的变量时,我们已将文本值分配为“ Long Number”,然后使用excel VBA CLNG函数将其转换为LONG数据类型。
之所以会出现此错误,是因为LONG数据类型只能接受数字数据类型,因为我们已将字符串值提供给变量,因此无法将字符串值或文本值转换为长数据类型,因此将错误显示为“类型不匹配”。
例子#3
我们使用LONG数据类型得到的另一个错误是“ vba中的溢出错误”,即长变量数据类型可以保存从-2,147,483,648到2,147,483,647的值。因此,任何高于此值的值都会导致溢出错误。
例如,请看下面的代码。
代码:
Sub CLNG_Example3()Dim LongNumber as String Dim LongResult As Long LongNumber =“ 25645890003” LongResult = CLng(LongNumber)MsgBox LongResult End Sub
对于变量“ LongNumber”,我分配了超出“ Long”数据类型限制的数字“ 25645890003”。当我们运行上面的代码时,它将遇到一个 “溢出” 错误。
因此,当您将任何其他数据类型转换为Long数据类型时,我们需要牢记上述所有内容。
这里要记住的事情
- CLNG表示转换为long。
- 此函数将其他数据类型转换为长数据类型。
- 您需要知道长数据类型的限制,以防止发生溢出错误。