教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について説明していきます。

【ExcelVBA 関数】 CStr関数で数値を文字列に変換する方法を教えて!

       f:id:m_kbou:20200420122710p:plain

CStr関数は数値を文字列に変換します。使い方について説明します。

 

【目次】

 

構文

記述方法は、以下の通りとなります。

=======================================================================

CStr[数値]

=======================================================================

[説明]:

[数値]には文字列に変換するための数値を記述します。内容を纏めると、「[数値]で入力した数値を文字列に変換して下さい。」との意味になります。

[記述例]:

CStr(10)

 

使い方

使い方について、具体的に説明していきます。

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。

-------------------------------------------------

Sub サンプル()

    '↓処理①
    Dim 数値 As Integer
   
    '↓処理②
    数値 = 10
   
    '↓処理③
    MsgBox "数値は「" & 数値 & "」です。変数型は「" & VarType(数値) & "」です。"
   
    '↓処理④
    MsgBox "数値は「" & CStr(数値) & "」です。変数型は「" & VarType(CStr(数値)) & "」です。"

End Sub

-------------------------------------------------

処理の流れは以下の通りとなります。

[処理①]:変数の定義
Dimによる変数の定義となります。

[処理②]:変数に値をセット
変数:数値に「10」をセットします。

[処理③]:Msgboxを使用した変数:数値の値と変数型を表示
今回のMsgBoxでは、まず最初に[処理②]でセットした変数:数値を表示します。特別な変換処理をしていないため数値の「10」が表示され、次のVarTypeでは整数型との扱いから「2」が表示されます。

[処理④]:Msgboxを使用した変数:数値の値と変数型を表示
今回のMsgBoxでは、まず最初に[処理②]でセットした変数:数値を表示します。数値→文字列へ変換をしているため文字列としての「10」が表示され、次のVartypeでは文字列型との扱いから「8」が表示されます。

[実行例]:

・1回目のMsgBox表示内容です。

f:id:m_kbou:20190613115814p:plain

・2回目のMsgBox表示内容です。

f:id:m_kbou:20190613115825p:plain

CStr関数の使い方についての説明は以上です。

 

おわりに

今回はCStr関数の使い方について説明しました。データ形式を変換するケースは、VBAを記述している中では多々あります。是非活用してみて下さい。