「マクロの記録」について

エクセルには「マクロの記録」機能があります。
エクセル上で操作した動作をコード化してくれる機能です。

試してみましょう。

「開発」タブにある [マクロの記録]をクリックします。
「マクロ名」を テスト
「マクロの保存先」を 作業中のブック
として「OK」を押して下さい。

次の動作を行って下さい。
① A2セルを選択する
② 35000 を入力する
③ A2セルを選択する
④ 太字にする
⑤ A5セルを選択する

[記録終了]を押して「マクロの記録」を終了します。

以下のようになります。

記録されたコードを見てみましょう。

[マクロ]をクリックします。

先ほど記録したマクロ名「テスト」を選択して「編集」を押して下さい。

エディターが起動してコードが表示されます。

コードの解説です。

  1. Option Explicit
  2. Sub テスト()
  3. ‘ テスト Macro
  4. Range(“A2”).Select
  5. ActiveCell.FormulaR1C1 = “35000”
  6. Range(“A2”).Select
  7. Selection.Font.Bold = True
  8. Range(“A5”).Select
  9. End Sub

 

  1. 前述しました「マクロを始める前の準備」の「変数の宣言を強制する」にチェックを入れると自動的に記述されます。
    ここでは直接関係ありません。
  2. マクロ コードの開始のお約束です。 Subの後ろがマクロ名です。
    難しく説明すると「Subステートメント」と呼びます。
  3. テストの文字の前に ’(コーテーション)があるとコメントになります。
    自動記録をすると自動的に記述されます。
    コメントとは、メモで説明を自由に記述を行うことができます。
    コメントは、マクロを実行する時には何も関係ありません。
    消しても問題ありません。
  4. A2セルを選択します。
  5. 選択セルに 35000 を入力する
  6. A2セルを選択します。
  7. 選択セルを 太字 にします。
  8. A5セルを選択します。
  9. マクロの終了です。
    Sub セットになります。

記録されたマクロは繰り返し実行することができます。
新しいシートを追加して 記録したマクロ「テスト」を実行して下さい。

新しいシートに記録した内容が再現されます。

「マクロの記録」は意外と知られている機能です。
パチンコ店では、
毎日入力を行う 金銭管理表 などの一覧で入力するセルをクリアする操作を記録、
スロット営業で明日の設定値を入力するセルをクリアする操作を記録
といった使い方がされているのではないでしょうか。

私もマクロとの出会いは「マクロの記録」からでした。
「マクロの記録」を複数回行い、それをコピペして一つにまとめて使っていました。

しかし、「マクロの記録」は行った操作を記録するだけで
 次の日が店休日の場合
 今日が月末日の場合
 パチンコの場合 スロットの場合
 新台入替日の場合
など条件が付く場合は対応ができません。
このような場合、手書きでコードを記述しなければなりません。

「マクロの記録」だけでは実用的なマクロを作成することはできません。
ただ「マクロの記録」は便利な機能でVBAを作成するときにも活用できます。
こちらについては、改めて解説します。
ここでは、マクロのコードがどこに記述され、どのように確認を行うのか 実行するのか理解して下さい。