Table of contents
如果你正在寻找一些最简单的方法来使用 VBA IsNumeric 我们一般会在下列场合使用这个函数 VBA 来测试一个表达式是否是数字,根据表达式,它将返回 为真 如果表达式是一个数字,否则 失败 .
下载工作手册
VBA IsNumeric Function.xlsmVBA IsNumeric函数:语法& 参数
⦿ 语法
IsNumeric (Expression)
⦿ 论点
争论 | 必备/可选 | 解释 |
---|---|---|
表达方式 | 需要 | 它是一个变体,要检查它是否是一个数字。 |
⦿ 返回值
输入 | 返回值 |
---|---|
数量 | 为真 |
不是数字;是字符串 | 失败 |
⦿ 版本
ǞǞǞ ISNUMERIC函数 中提出的。 Excel 2000 版本,并可用于此后的所有版本。
9个使用VBA IsNumeric函数的例子
在这篇文章中,我们将尝试展示以下的用途 VBA IsNumeric 与一些随机的例子一起,包括下表中的一些例子。
我们已经使用了 微软Excel 365 在这里,你可以根据你的方便使用任何其他版本。
1.用一些随机值检查VBA的IsNumeric情况
在这里,我们将测试一些随机字符串与 VBA 符号 ,如果这些值是数字,或不是数字。
步骤-01 :
➤ 转到 开发商 标签>>。 视觉基础 选择。
然后,在 Visual Basic编辑器 将打开。
➤ 转到 插入 标签>>。 模块 选择。
在这之后,一个 模块 将被创建。
步骤-02 :
➤ 编写以下代码
Sub checkvalue1() Dim x As Variant x = InputBox("Give any Value") MsgBox IsNumeric(x) End Sub
在这里,我们已经宣布 x 作为一个 变体 并且它将存储输入值。 然后 符号 将返回 为真 如果输入值是数字,则返回 失败 我们将在一个消息框中找到输出结果( MsgBox ).
➤ 按 F5 .
然后你会得到下面的输入框,如果你写下的值是 100 并按 认可 ,
你会得到一个信息框,上面写着 "真" .
用于写入字符串 猫咪 并按 认可 在输入框中。
我们收到一个信息框说 "假的" .
阅读更多:如何在Excel中使用VBA随机化功能(5例)。
2.使用VBA IsNumeric与IF-THEN-ELSE语句
在本节中,我们将使用 ISNUMERIC函数 与 IF-THEN-ELSE 语句在一个 VBA 代码来定义数字和非数字的值。
阶梯 :
➤ 跟随 步骤-01 科室的 1 .
➤ 写下以下代码
Sub checkvalue2() Dim x As Variant x = InputBox("Give any Value") If IsNumeric(x) = True Then MsgBox "The Given Value is numeric" Else MsgBox "The Given Value is not numeric" End If End Sub
在这里,我们已经宣布 x 作为一个 变体 它将存储输入值。 当 符号 将返回 为真 , 基金会 将返回一个消息说 "给定值是数字" 而如果 符号 返回 失败 ,那么 基金会 返回一条信息,说明 "给定值不是数字" .
➤ 按 F5 .
然后你会得到下面的输入框,如果你写下的值是 200 并按 认可 ,
你会得到一个信息框,上面写着 "给定值是数字" .
用于写入字符串 猫咪 并按 认可 在输入框中。
我们收到一个信息框说 "给定值不是数字" .
阅读更多。 Excel中的VBA If - Then - Else语句(4个例子)
3.用IsNumeric函数创建一个相反的结果
在这里,我们将创建一个 VBA 代码,将给我们带来与之相反的结果。 ISNUMERIC函数 ,这意味着对于数值,我们将得到 失败 ,对于非数字值,它将返回 为真 .
阶梯 :
➤ 跟随 步骤-01 科室的 1 .
➤ 写下以下代码
Sub checkvalue3() Dim x As Variant x = InputBox("Give any Value") If IsNumeric(x) = True Then MsgBox ("FALSE") Else MsgBox ("TRUE") End If End Sub
在这里,我们已经宣布 x 作为一个 变体 它将存储输入值。 当 符号 将返回 为真 , 基金会 将返回一个消息说 "FALSE" 而如果 符号 返回 失败 ,那么 基金会 返回一条信息,说明 "TRUE" .
➤ 按 F5 .
然后你会得到下面的输入框,如果你写下的值是 25 并按 认可 ,
你会得到一个信息框,上面写着 "FALSE" .
用于写入字符串 阿拉斯加 并按 认可 在输入框中。
我们收到一个信息框说 "TRUE" .
相关内容。 Excel中的VBA格式功能(8种用途及实例)
4.检查空白处是否为数字。
你可以很容易地用一个 VBA 编码,如果空白是数字或不是。
阶梯 :
关注 步骤-01 科室的 1 .
➤ 写下以下代码
Sub checkvalue4() Dim x As Variant x = " " MsgBox IsNumeric(x) End Sub
在这里,我们已经宣布 x 作为一个 变体 并且它将存储 空白 .然后 符号 将返回 为真 如果 空白 是数字,否则它将返回 失败 .
➤ 按 F5 .
之后,你会得到一个信息框,说 "假的" 这意味着 空白不是数字 .
阅读更多。 用Excel公式生成随机数(5个例子)
5.检查日期是否为数字型
在本节中,我们将使用一个随机日期,并检查日期是否为数字。
阶梯 :
➤ 跟随 步骤-01 科室的 1 .
➤ 写下以下代码
Sub checkvalue5() Dim x As Variant x = "02/02/2022 " MsgBox IsNumeric(x) End Sub
在这里,我们已经宣布 x 作为一个 变体 它将存储一个日期。 然后 符号 将返回 为真 如果日期是数字的,则将返回 失败 .
➤ 按 F5 .
之后,你会得到一个信息框,说 "假的" 这意味着 日期不是数字 .
我们也可以尝试用 DATESERIAL函数 来创建日期,并检查它是否是数字的。
➤ 输入以下代码
Sub checkvalue5a() Dim x As Variant x = DateSerial(2022, 2, 2) MsgBox IsNumeric(x) End Sub
在这里,我们已经宣布 x 作为一个 变体 并且它将存储一个由 DATESERIAL函数 .然后 符号 将返回 为真 如果日期是数字的,则将返回 失败 .
➤ 按 F5 .
作为回报,你会得到一个信息框,上面写着 "假的" 也是这个时候。
阅读更多。 VBA日期功能(宏的12种用途及示例)
类似的阅读。
- 如何在Excel VBA中使用MsgBox函数(完整指南)
- 使用VBA的Environ函数(4个例子)
- 如何在Excel中使用VBA和函数(4个例子)
- 使用VBA案例声明(13个例子)
- 如何在Excel VBA中使用对数函数(5个合适的例子)
6.检查时间是否为数字型
在本节中,我们将通过使用以下方法来检查时间是否是数字的 ISNUMERIC函数 .
阶梯 :
➤ 跟随 步骤-01 科室的 1 .
➤ 写下以下代码
Sub checkvalue6() Dim x As Variant x = "09:30:00 AM" MsgBox IsNumeric(x) End Sub
在这里,我们已经宣布 x 作为一个 变体 它将存储一个时间。 然后 符号 将返回 为真 如果时间是数字的,则会返回 失败 .
➤ 按 F5 .
之后,你会得到一个消息框,说 "假的" 这意味着 时间不是数字 .
你也可以尝试用 TIMESERIAL函数 来创建日期,并检查它是否是数字的。
➤ 输入以下代码
Sub checkvalue6a() Dim x As Variant x = TimeSerial(9, 30, 0) MsgBox IsNumeric(x) End Sub
在这里,我们已经宣布 x 作为一个 变体 并且它将存储一个由 TIMESERIAL函数 .然后 符号 将返回 为真 如果时间是数字的,则会返回 失败 .
➤ 按 F5 .
然后,你会得到一个信息框,说 "假的" 也是这一次。
同样,我们可以尝试在工作表的一个单元格中引用一个时间值。
➤ 输入以下代码
Sub checkvalue6b() Dim x As Variant x = range("B2").value MsgBox IsNumeric(x) End Sub
在这里,我们已经宣布 x 作为一个 变体 它将存储一个时间,在 B2 细胞。 然后 符号 将返回 为真 如果时间是数字的,则将返回 失败 .
➤ 按 F5 .
最后,你会得到一个消息框,说 "真" 这一次。
阅读更多。 如何在Excel中使用VBA TimeSerial (3个例子)
7.对一个数值范围使用VBA的IsNumeric
在这里,我们将检查是否有 分数/等级 列是数字或非数字的,并且其结果在 检查 列。
阶梯 :
关注 步骤-01 科室的 1 .
➤ 写下以下代码
Sub checkvalue7() Dim cell As Range For Each cell In Range("D5:D11") cell.Offset(0, 1) = IsNumeric(cell) Next cell End Sub
我们将单元格声明为Range,并使用了一个 为 循环处理范围内的单元格 "D5:D11" 而对于这些细胞来说, 符号 将返回 为真 如果该值是数字,则将返回 失败 和 cell.Offset(0, 1) 将在一列的输出值之后返回到输入列。
➤ 按 F5 .
此后,我们将有 为真 数值或 符号 和 失败 非数字型数值,或 等级划分 .
阅读更多。 如何在Excel中使用VBA的Val函数(7个例子)
8.创建一个函数来测试一个值的范围
在本节中,我们将创建一个带有 VBA ISNUMERIC 的值,并检查是否 分数/等级 列是数字或非数字。
步骤-01 :
关注 步骤-01 科室的 1 .
➤ 写下并保存以下代码
Function IsNumericTest(value As Variant) As Boolean If IsNumeric(value) Then IsNumericTest = True Else IsNumericTest = False End If End Function
这段代码将创建一个名为 检验是否是数字式的 .
步骤-02 :
➤ 返回到主工作表,在单元格中输入以下公式 E5
=IsNumericTest(D5)
D5 是指 分数/等级 的一个学生和 检验是否是数字式的 将返回 真/假 取决于该值。
➤ 按 进入 并向下拖动 填充手柄 工具。
最后,我们将有 为真 数值或 符号 和 失败 非数字型数值,或 等级划分 .
相关内容。 如何在Excel中使用VBA DIR函数(7个例子)
9.用VBA的IsNumeric函数计算非数字值
我们要计算非数字值或成绩的 分数/等级 列,在这里我们将使用 VBA ISNUMERIC 并有我们的非数字值的总数,在 计数 列。
步骤-01 :
➤ 跟随 步骤-01 科室的 1 .
➤ 写下并保存以下代码
Function countnonnumeric(value As range) As Long Dim cell As range Dim count As Long For Each cell In value.Cells If Not IsNumeric(cell.value) Then count = count + 1 End If Next countnonnumeric = count End Function
这段代码将创建一个名为 数一数二 .
当单元格的值不是一个数字时,那么 数 将会增加 1 .
步骤-02 :
➤ 返回到主工作表并键入以下公式
=countnonnumeric(D5:D11)
D5:D11 的范围。 分数/等级 的学生和 数一数二 将返回非数字等级的总数。
➤ 按 进入
最后,你将得到一个值 3 这意味着你有 3 在的成绩。 分数/等级 列。
阅读更多。 如何在VBA函数中返回一个值(包括数组和非数组值)?
IsNumeric vs ISNUMBER
- 符号 检查一个值是否可以转换为一个数字,并且 身份证号码 检查一个值是否被存储为数字。
- 彼此之间存在一些差异。 VBA的ISNUMERIC函数 和Excel 函数ISNUMBER 我们试图通过使用我们先前创建的 函数IsNumericTest 和内置的Excel 函数ISNUMBER .
练习部分
为了方便自己的练习,我们提供了一个 实践 的工作表中,像下面这样,在一个名为 实践 .请你自己去做。
总结
在这篇文章中,我们试图介绍一些使用的方法。 VBA ISNUMERIC 希望你会发现它很有用。 如果你有任何建议或问题,欢迎在评论区分享。