代入について
代入とは変数などに値を入れることを言います。変数に値を代入するには以下のように記述します。
Dim 変数名 As データ型
変数名 = 値
変数に値を代入する時は、左側に変数名、右側に代入する値を記述し、イコール( = )で結びます。これは左辺と右辺が等しいと書いているのではなく、右辺の値を左辺へ代入するという意味です。
代入する値が決まった数字や文字の場合
例えば変数「x」に「10」という値を代入したい場合には以下のように記述します。
変数xのデータ型は整数(integer)とします。
Sub プロシージャ名()
Dim x As Integer
x = 10
End Sub
これで変数「x」に 「10」という値が代入されました。
複数の変数を宣言している場合、それぞれの変数には異なる値を代入することができます。
Sub プロシージャ名()
Dim x As Integer
Dim y As Integer
x = 10
y = 8
End Sub
代入する値が計算結果の場合
代入する値は、決まった数値や文字だけでなく代入するときに計算される場合もあります。変数に計算結果の値を代入するには以下のように記述します。
Sub プロシージャ名()
Dim x As Integer
x = 1+2
End Sub
この代入文では右側の代入する値は「1+2」と計算結果ではなく計算式が書かれています。左側の計算結果の中には「1+2」ではなくその答えとなる「3」が代入されることになります。
代入する値が文字列の連結の場合
文字列と文字列を結合するには以下のようにアンパサンド(&)演算子を使う方法とプラス(+)演算子を使う方法の2つがあります。
“文字列1” & “文字列2”
“文字列1” + “文字列2”
変数に文字列の連結の値を代入するには以下のように記述します。
変数x、変数yのデータ型は文字列(string)とします。
Sub プロシージャ名()
Dim x As String
Dim y As String
x = “こんにちは。” & “お元気ですか?”
y = “こんにちは。” + “お元気ですか?”
End Sub
この代入文では右側の代入する値は「”こんにちは。” & “お元気ですか?”」と「”こんにちは。” + “お元気ですか?”」と書かれています。左側の変数(x、y)の中には連結した値「”こんにちは。お元気ですか?”」が代入されることになります。
文字列を連結する場合はアンパサンド(&)演算子、プラス(+)演算子のどちらを使用しても構わないのですが、プラス(+)演算子は数値と数値の加算を行う演算子としても使用するので、文字列の連結にはアンパサンド(&)を使用すると分かりやすいかもしれません。