今回は変数について勉強していきましょう

変数は変化する数字や文字列を一時的に入れておくものです。
例えば、
毎月りんごを買っています

4月は1個190円のりんごを5個、5月は1個169円のりんごを8個、6月は1個211円のりんごを3個買いました。
毎月の経費はいくらでしょう?
といった場合、
個数=△△
単価=○○
経費=個数 * 単価
として、△△と○○を変化させていくイメージです。
個数・単価・経費が変数です。
変数を使用する時には、変数の名前とデータ型 (文字列・整数・少数など) を宣言します。
Dim 変数 As データ型
上記の例でいうと、
Dim 個数 As Integer
Dim 単価 As Integer
Dim 経費 As Integer
となります。
宣言しなくてもVariant型 (何にでも使える) とみなされ、 使えますが、
宣言すると見返したときに内容がより分かりやすくなりますし、誤ったデータが入ったときに気づきやすいので、少なくとも慣れるまでは宣言することをお勧めします。
よく使うデータ型はこちらです。
Integer:整数 (-32,768~32,767)
Long:Integerより大きい整数 (-2,147,483,648 ~ 2,147,483,647)
Double:小数点
String:文字列
Variant:なんでも使えます
オブジェクトも変数に入れられます。
Workbook:ワークブック
Worksheet:ワークシート
Range:セル、セル範囲
変数に使える文字は、
先頭は文字列。 2文字目以降は文字列、数字、「_」が使えます。
日本語もアルファベットも使えます。
スペースは使用不可。
メソッドや関数等に使われている単語は使用不可です。
先ほど、 オブジェクトも変数に代入できると書きましたが、 代入の仕方が少し異なります。
Dim R As Range
Set R=ActiveCell
Setを忘れないよう注意しましょう。
ActiveCellは今選択されているセルのことです。
ActiveCellやよく使う範囲のセルを変数に代入しておくと便利です。
ワークシート、ワークブックを変数に入れる場合も同様にSetで代入します。
詳しくはワークシート、 ワークブックの指定の仕方で触れます。
::::::::::::::::::::::::::::::::::::::
例。括弧()内の変数へ値を代入し、セルに入力してみましょう。
①5.4 (Dim 整数 As Integer, Dim 少数 As Double)
②5.5 (Dim 整数 As Integer, Dim 少数 As Double)
③“文字” (Dim 文字列 As String)
④B7を変数セルに代入し、"セル” を入力 (Dim セル As Range)
おおよそこのようなコードになるかと思います。
Sub 変数()
Dim 少数 As Double
Dim 整数 As Integer
少数 = 5.4 '例①
整数 = 少数
Cells(2, 2) = 少数
Cells(3, 2) = 整数
少数 = 5.5 '例②
整数 = 少数
Cells(2, 3) = 少数
Cells(3, 3) = 整数
Dim 文字列 As String '例③
文字列 = "文字"
Cells(5, 2) = 文字列
Dim セル As Range '例④
Set セル = Cells(7, 2)
セル = "セル"
End Sub
Dim 少数 As Double
Dim 整数 As Integer
少数 = 5.4 '例①
整数 = 少数
Cells(2, 2) = 少数
Cells(3, 2) = 整数
少数 = 5.5 '例②
整数 = 少数
Cells(2, 3) = 少数
Cells(3, 3) = 整数
Dim 文字列 As String '例③
文字列 = "文字"
Cells(5, 2) = 文字列
Dim セル As Range '例④
Set セル = Cells(7, 2)
セル = "セル"
End Sub
結果を見てみると、少数は整数のデータ型に入れると四捨五入された整数になることが分かります。
データ型を選ぶときにはこのような点も考慮して選びましょう

次回は繰り返し文についてです。