Microsoft Excel VBA で整数を文字列データ型に変換する
VBA は Visual Basic for Applications
の略です。 Excel、Word、PowerPoint など、すべての Microsoft Office アプリケーション用のプログラミング言語です。
VBA を使用すると、ユーザーはマクロ
と呼ばれるコードを記述して、Microsoft Office アプリケーションでの時間を最適化できます。 このように、ユーザーは同じアクションを手動で繰り返し実行する代わりに、タスクのマクロを実行して自動化し、時間を節約できます。
VBA は開発者にさまざまな機能を提供します。 この記事では、Integer
データ型を String
データ型に変換する方法を学びます。
ただし、最初に、VBA でのこれらのデータ型の基本的な概要を説明しましょう。
データ型とは
データ型は、さまざまな型の値とそれらに対して許可されているさまざまな操作を持つ変数の型の分類です。 データ型は、データにコンテキストを与え、コンパイラがデータの動作を理解するのに役立ちます。
Integer
、Character
、Boolean
、String
など、さまざまなデータ型があります。
VBA の Integer
データ型
名前が示すように、このデータ型は、1
、-3
、100
などの整数値を格納する変数に割り当てられます。非小数値を格納します。
このデータ型は、-32,768
から 32,767
の範囲の値を持つ 2
バイトのメモリを必要とします。
Integer
型の変数を宣言する構文は次のとおりです。
Dim X As Integer 'where X will be the Integer type variable
VBA の String
データ型
文字列は一連の文字です。 文字は、アルファベット、数字、または特殊文字にすることができます。
したがって、任意のテキストを String
型変数に格納できます。 可変長と固定可変長の 2 種類があります。
可変長文字列
可変長 String
では、10
バイトが文字列の長さに追加され、範囲は 0
から 2
億文字です。 このデータ型を宣言する構文は次のとおりです。
Dim strName As String 'where strName will be the string type variable
固定可変長 文字列
1
から 65,400
文字の範囲で、ユーザーが定義した固定長を持ちます。 VBA でこのデータ型を宣言する構文は次のとおりです。
Dim strName As String * 20 'where strName will be the string type variable
データ型の変換
データ型の変換とは、あるデータ型から別のデータ型に変更することを意味します。 たとえば、浮動小数点 float
から integer
への変換は、暗黙的または明示的に行うことができます。
暗黙的な変換は、float
から integer
へのように、データ型に互換性がある場合です。 このような変換は自動的に行われます。
明示的な変換は、integer
から string
へのように、データ型に互換性がない場合です。 このようなデータ型は、ユーザーが手動で変換します。
VBA で Integer
から String
データ型に変換する方法
データ型と変換の基本を理解したところで、問題は VBA で 整数
から 文字列
にどのように変換できるかということです。 簡単な答えは、関数 CStr(expression)
です。ここで、expression
は、String
に変更しようとしている Integer
値です。
他の言語と同様に、VBA では関数を使用できます。 関数は、データに対して特定の操作を実行した後に値を返すプロシージャです。
VBA を含むすべての言語は、既存のライブラリからいくつかの組み込み関数を提供します。
CStr(expression)
も String
型の値を返す組み込み関数です。 引数には任意の式が含まれます。
データ型式がパラメーターを介して渡されると、関数は String
型の値を変換して返します。 以下は、CStr(expression)
関数に渡される式のいくつかのケースです。
Empty
: パラメータに何も渡されない場合、つまりCStr()
コードが実行されると、関数は空のString
、つまり" "
を返します。Boolean
:CStr()
にboolean
が渡されると、True
またはFalse
を含むString
が返されます。数値
: その数値を含む文字列
が返されます。Date
: 日付を含むString
が返されます。つまり、日付がテキスト形式で表示されます。
上記の説明から、Integer
を String
データ型に変換することは明らかです。 Integer
値を CStr(expression)
関数に渡す必要があります。 この変換をさらに理解するために、いくつかの例を見てみましょう。
例 1
Sub example1()
Dim intX As Integer
Dim ReturnedValue As String
intX = 23
ReturnedValue = CStr(intX)
MsgBox ReturnedValue
End Sub
この例では、最初に Integer
型変数 intX
を宣言し、後でそれに 23
の値を割り当てました。 String
型の変数 ReturnedValue
も最初に宣言されています。
次に、intX
をパラメーターとして渡して CStr()
関数呼び出しを行います。 戻り値はReturnedValue
変数に格納されます。
現在、ReturnedValue
には、数値の代わりにテキスト "23"
が含まれています。 出力では、MsgBox
コマンドによって 23
が表示されます。
例 2
Sub Example2()
Dim ReturnedValue As String
ReturnedValue = CStr(1000)
MsgBox ReturnedValue
End Sub
この例では、変数の代わりに Integer
値が直接渡されます。 CStr()
関数呼び出しの後、"1000"
が ReturnedValue
変数に String
として保存されます。
出力 1000
は MsgBox
コマンドによって表示されます。
まとめ
VBA を使用すると、関数を使用してデータに対していくつかの操作を実行できます。 あるデータ型から別のデータ型への変換は便利な操作です。
たとえば、任意のデータ型を String
型に変換して、MsgBox
コマンドを介して値を表示できます。このコマンドは、String
型のプロンプトのみを受け取ります。
この記事では、データ型とは何か、およびそれらの間の変換の意味について説明しました。 CStr(expression)
関数を使用して Integer
データ型から String
データ型への変換を学習し、CStr(expression)
関数の使用法を理解するためにいくつかの例を見ました。
Hello, I am Bilal, a research enthusiast who tends to break and make code from scratch. I dwell deep into the latest issues faced by the developer community and provide answers and different solutions. Apart from that, I am just another normal developer with a laptop, a mug of coffee, some biscuits and a thick spectacle!
GitHub