如何在 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 中执行其他常见任务: