如何在 vba 中将字符串转换为整数(附示例)


您可以使用 VBA 中的CInt函数将文本字符串转换为整数。

以下是在实践中使用此功能的两种常见方法:

方法1:在VBA中将字符串转换为整数

 Sub ConvertStringToInteger()

    Dim i As Integer

    For i = 2 To 11
        Range(" B " & i) = CInt(Range(" A " & i))
    Next i

End Sub

这个特定的宏会将A2:A11范围内的每个字符串转换为整数,并显示B2:B11范围内的整数。

方法2:在VBA中将字符串转换为整数(仅当字符串是数字时)

 Sub ConvertStringToInteger()

    Dim i As Integer

    For i = 2 To 11
        If IsNumeric(Range(" A " & i)) Then
            Range(" B " & i) = CInt(Range(" A " & i))
        Else
            Range(" B " & i) = 0
        End If
    Next i

End Sub

仅当字符串是数字时,此特定宏才会将范围A2:A11中的每个字符串转换为整数。否则,字符串将被转换为空值。

以下示例展示了如何在实践中使用每种方法。

示例 1:在 VBA 中将字符串转换为整数

假设 Excel 中有以下一列值,当前格式为文本字符串:

假设我们要将每个字符串转换为整数并将整数显示在 B 列中。

我们可以创建以下宏来执行此操作:

 Sub ConvertStringToInteger()

    Dim i As Integer

    For i = 2 To 11
        Range(" B " & i) = CInt(Range(" A " & i))
    Next i

End Sub

当我们运行这个宏时,我们会收到以下输出:

请注意,A 列中的每个文本字符串都已转换为整数并显示在 B 列中。

示例 2:在 VBA 中将字符串转换为整数(仅当字符串是数字时)

假设 Excel 中有以下一列值,当前格式为文本字符串:

假设我们只想在每个字符串是数字时将其转换为整数,并将整数显示在 B 列中。

我们可以创建以下宏来执行此操作:

 Sub ConvertStringToInteger()

    Dim i As Integer

    For i = 2 To 11
        If IsNumeric(Range(" A " & i)) Then
            Range(" B " & i) = CInt(Range(" A " & i))
        Else
            Range(" B " & i) = 0
        End If
    Next i

End Sub

当我们运行这个宏时,我们会收到以下输出:

请注意,只有 A 列中的数字文本字符串才会转换为 B 列中的整数。

否则,文本字符串将简单地转换为空值。

注意:您可以在此处找到 VBA Cint函数的完整文档。

其他资源

以下教程说明如何在 VBA 中执行其他常见任务:

VBA:如何从字符串中删除空格
VBA:如何计算字符串中字符的出现次数
VBA:如何检查一个字符串是否包含另一个字符串

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注