セルの値の取得
セルの値の取得では、前々回に説明したValueプロパティを使って指定したセルの値を取得して、別のセルの値に設定してみます。
これは請求書などを作る際にも覚えておくと便利なマクロですので、プログラミングの作り方とコードをしっかりと覚えていきましょう。
セルの値を取得し、計算した値を入力する。
今回プログラミングする内容は開始日と終了日の2つを作成し、終了日のセルには開始日の値に7日間をプラスした値を表示させます。
エクセル上ではシートのA2のセルを開始日・シートのC2を終了日とします。
まとめると
C2セルにA2セルの値+7日の値を入力する。
この流れをプログラムコードに変えるだけです。
初めは難しく思えますが、仕組みさえ理解できれば簡単です。
では早速マクロを作ってみましょう。
エクセルを開きVBEを起動させます。
①マクロ開始。
「sub 開始日」と入力し、マクロを開始させる。
エンターを押すとSub 開始日のあとに( )が付きます。
カーソルが2行目に移動しているので、インデントを設定し見やすくしましょう。
2行目の「ActiveSheet.range("A2").value = Date 」
これを実行させるとA2のセルに今日の日付が入力されます。
今回のマクロは終了日と一緒に表示させるため、この段階ではマクロの実行は行いません。
②終了日を設定する。
もう一度マクロを開始させます。
先ほど入力したものの下から始めましょう。
これが前半部分です。
activesheet.range("A2").value =
コードの内容は
アクティブシートのセルC2に
となります。
次はコードの = のあとに後半部分を入力していきます。後半部分は
activesheet.range("A2").value+7
です。コードの内容は
アクティブシートのセルA2の値+7を設定します。
2つ合わせたものがこちらです。
これでコードは完成です。
内容は
アクティブシートのセルC2に、セルA2の値に7を加えた値を設定する。
というものになります。
英語の翻訳と簡単な数学を解くように、コードの作り方と意味がわかってくるとエクセルでどのように表示されるか予想できるようになってきますよね。
③マクロの実行
では最後に正しくコードが入力されているかマクロを実行させて確認してみましょう。
VBEからエクセルの画面に戻し、[ツール]⇒[マクロ]⇒[マクロ]を選びます。
マクロのダイアログボックス表示されました。
上の開始日から順番に選択し、右側の実行をクリックします。
④マクロの実行結果確認
A2のセルには「開始日」である今日の日付が入力され、C2セルには「終了日」である7日後の日付が入力されました。
このような処理を記憶させ作業をスムーズにしてゆくものがマクロです。