Excelマクロで変数をシートに保存する
前回の[VBA(マクロ)で変数を使って計算する]では、変数を足し算した結果をmsgboxコマンドで表示しました。
変数は VBA(マクロ)を終了すると消えてしまうので、消える前にシートに書き込んでおくようにしましょう。
シートに登録している値を変数に取得したり、変数をシートに保存する VBA(マクロ)について説明します。
シートから値を変数に取得する
前回は、下記のように変数に直接値を代入しました。
Sub 変数マクロ()
Dim A As Integer
Dim B As Integer
Dim C As Integer
A = 1
B = 2
C = A + B
msgbox "答えは " & Str(C) & "です。"
End Sub
今回は、シートから値を変数に取得します。
上のシートのように入力してください。
Sub 変数マクロ3()
Dim A As Integer
Dim B As Integer
Dim C As Integer
A = Worksheets("Sheet1").Range("C2").Value
B = Worksheets("Sheet1").Range("C3").Value
C = A + B
msgbox "答えは " & Str(C) & "です。"
End Sub
VBA(マクロ)を上のように修正して実行すると下図のように表示します。
今回のVBA(マクロ)では、シートから値を変数に代入しています。
シートに値を保存する
シートから値を変数に代入することを学びましたので、今度は[シートに値を保存する]方法について説明します。
先ほどのVBA(マクロ)に下のように追加してください。
Sub 変数マクロ3()
Dim A As Integer
Dim B As Integer
Dim C As Integer
A = Worksheets("Sheet1").Range("C2").Value
B = Worksheets("Sheet1").Range("C3").Value
C = A + B
MsgBox "答えは " & Str(C) & "です。"
Worksheets("Sheet1").Range("C4").Value = C
End Sub
VBA(マクロ)を実行して下の表示が出たら[OK]を押します。
C4 に 3 が入力されています。
Worksheets("Sheet1").Range("C4").Value = C
上の命令は、[C の値(3)を C4 に入力しなさい。]という命令です。
変数をシートに保存する例を説明しました。
1. シートから値を変数に取得する。
2. 変数の値をシートに保存する。
この2つのことが理解できましたか?
理解できたら[スキ]、わからないときは下のコメント欄に[コメント]を投稿してください。