Vba で文字列を整数に変換する方法 (例付き)


VBA のCInt関数を使用して、テキスト文字列を整数に変換できます。

この機能を実際に使用する一般的な 2 つの方法を次に示します。

方法 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の各文字列を整数に変換します。それ以外の場合、文字列は null 値に変換されます。

次の例は、各メソッドを実際に使用する方法を示しています。

例 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 の整数に変換されることに注意してください。

それ以外の場合、テキスト文字列は単純に null 値に変換されます。

: VBA Cint関数の完全なドキュメントはここで見つけることができます。

追加リソース

次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。

VBA: 文字列からスペースを削除する方法
VBA: 文字列内の文字の出現を数える方法
VBA: 文字列に別の文字列が含まれているかどうかを確認する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です