VBA Asc |如何在Excel VBA中使用Asc函数? (ASCII字符代码)

Excel VBA Asc函数

VBA中的Asc函数用于将整数值返回给该函数,该整数值表示与所提供的字符串(作为参数/参数提供的字符串)的第一个字符相对应的字符代码。它可以在通常通过Visual Basic编辑器输入的宏代码中使用或指定。

宏在Visual Basic编辑器(VBE)中运行的Excel环境中,可用于编辑和调试宏代码。它包含宏代码,并将其链接到Excel工作簿。

Asc函数返回的整数值是VBA中相应的ASCII字符代码。 ASCII(美国信息交换标准代码)是一种7位字符编码,其中总共定义了128个字符,包括拉丁字母,十个阿拉伯数字,一些标点符号和控制字符。它不包含变音字符,因为它们需要最少8位的编码空间。这种8位编码是使用ANSI(美国国家标准协会)完成的,该ANSI总共定义了256个字符。 ANSI也称为扩展ASCII。

VBA Asc函数的语法

ASC功能的常规语法如下:

ASC公式语法具有以下参数:

细绳: 必填,表示需要并返回其第一个字符的相应字符代码的文本字符串。

如果提供的字符串只有一个字符,则该函数显然会返回该字符本身的数字字符代码。

Excel VBA Asc的示例

下面让我们看看如何在Excel VBA中使用Asc。

您可以在此处下载此VBA Asc功能Excel模板– VBA Asc功能Excel模板

范例#1

假设我们有一个包含一些字符串的Excel文件,并且希望对这些字符串使用Asc函数。让我们看看文件中包含的字符串:

我们在VBA中的宏中使用Asc函数,该宏可以在Visual Basic编辑器中编写,并且可以按以下方式访问:

转到开发人员,然后单击宏:

现在,创建一个宏名称:在“宏名称”下,输入要创建的宏的名称,然后在“宏输入”下拉列表中选择PERSONAL.XLSB。宏可以存储在个人工作簿中,该工作簿是一个隐藏的工作簿,每当启动Excel时,该工作簿就会在后台打开。选择PERSONAL.XLSB会将宏保存在“个人工作簿”中,从而使该宏始终可用,因为“个人工作簿”不是特定于系统/文件的。

点击“创建”。

这将在Visual Basic编辑器中打开一个包含VBA子过程的窗口,如下所示:

现在,定义变量Result

代码:

子代码()昏暗结果1结束子

现在为变量Result1分配公式,以返回字符串的字符代码:

代码:

子代码()昏暗Result1 Result1 = Asc(“ Raj”)结束子

现在,可以使用VBA消息框(MsgBox)显示并返回Result1的结果值,如下所示:

代码:

子代码()Dim Result1 Result1 = Asc(“ Raj”)MsgBox Result1 End Sub

现在,当我们通过单击窗口顶部的“运行”或按F5手动运行此代码时,我们将获得字符串的第一个字母的字符代码:“ Raj”,显示在消息框中,如下所示:

因此,我们可以在上面的屏幕截图中看到,在运行宏时,消息框中将返回“ 82”。这意味着“ R”的字符代码为82。

现在,让我们在上面的示例中说,我们希望找到字符串的字符代码:“ Karan”。为此,我们遵循与上述相同的步骤。

在代码中,Raj我们将编写Karan以获得其字符代码。

代码:

 Sub String2()Dim Result2 Result2 = Asc(“ Karan”)MsgBox Result2 End Sub 

现在,我们手动或通过按F5键运行此代码,然后获得字符串第一个字母的字符代码:“ Karan”显示在消息框中,如下所示:

因此,我们可以在上面的屏幕截图中看到,在运行宏时,消息框中将返回“ 75”。这意味着“ K”的字符代码为75。

现在让我们看看其余字符串的结果如何变化:

代码:

 Sub String3()Dim Result2 Result2 = Asc(“ Heena”)MsgBox Result2 End Sub 

 子String4()昏暗Result2 Result2 = Asc(“ Arun”)MsgBox Result2结束子 

 子String5()昏暗Result2 Result2 = Asc(“ A”)MsgBox Result2结束子 

 Sub String6()Dim Result2 Result2 = Asc(“ a”)MsgBox Result2 End Sub 

在逐个运行此子过程时,消息框中将返回以下字符代码(分别为一次)。这是为以上字符串返回的对应值的列表。

因此,如上面的屏幕截图所示,我们可以看到ASC函数为字符串“ Arun”以及字符串“ A”返回的字符代码为65。这是因为如果字符串超过一个字符,则返回的字符代码是VBA ASCII或字符串第一个字母的等效字符代码。因此,返回65作为字符串的首字母或第一个字符:“ Arun”也是“ A”。

范例#2

如果作为参数/参数提供给VBA ASC函数的字符串是空字符串(或无字符的字符串),则该函数将返回运行时错误。

以下代码对此进行了解释。

 Sub blank()昏暗结果结果= Asc(“”)MsgBox(结果)End Sub 

当我们运行此代码时,将出现运行时错误,如下所示。

因此,我们可以在上面的屏幕截图中看到,当作为ASC函数的参数或参数提供的字符串为空/空时,该函数将返回运行时错误。

要记住的事情

  • 提供给VBA ASC函数的字符串可以是任何有效的字符串表达式。
  • Asc函数区分大小写。
  • Asc函数返回的整数值在0-255的范围内。
  • VBA中A-Z的ASCII码为65-90,a-z的ASCII码为97-122。
  • 赋予宏或子过程的名称不能是VBA中某些默认函数的名称。如果这样命名,则子过程将显示错误。