VBA講義室 > 何から始めたらよいか > マクロの記録

マクロの記録

「マクロの記録」は「最初の先生」である。

とにかく記録!

マクロの記録は決して幼稚な手段ではない。
貴方の操作したことを、即座にそのままVBAコード化してくれるのだから、これ以上の先生はいない。私も覚えていないコードはヘルプを調べながら入力するより、実際の操作を記録したほうが早いので結構利用している。

マクロの本質は「ユーザーの操作を記録し、再現する」ことである。マクロ学習の手始めとして、まずは自分の行っている作業をそのまま記録してみてはいかがだろうか。

マクロの記録

【手順】

  1. [ツール(T)]>[マクロ(M)]>[マクロの記録(M)]
     「マクロの記録」ダイアログボックスが表示される。
  2. マクロ名(任意)とマクロの保存先を決定して [OK] でマクロ記録開始。
     記録終了ツールバーが表示される。マクロの保存先は
     「作業中のブック」
     「個人用マクロブック」
     「新しいブック」の選択が出来るが、当面は「作業中のブック」でよい。
  3. 記録したい操作を行う。
  4. [ツール(T)]>[マクロ(M)]>[記録終了(M)]
     (もしくは記録終了ボタンクリック)

マクロを記録するメリット

マクロの記録は次のようなメリットがある。

記録したコードを見てみる

記録したマクロはブックの標準モジュールという場所に記録される。記録されるだけでは不便なので、それを確認したり、編集したりするアプリケーションが用意されている。それが、VBE(Visual Basic Editor)である。
マクロの記録が終わったら一度どのような形で操作が記録されているか確認してみるのがいいだろう。

VBEを起動

【手順】


Alt+F11
または
メニュー[ツール(T)]>[マクロ(M)]>[VisualBasicEditor(V)]

「マクロの世界へようこそ!」
標準の出荷状態の起動画面では次のようなウィンドウが開いている。

記録したマクロはプロジェクトエクスプローラで標準モジュールと表記のあるフォルダアイコンの中のModule1などと表示されたところへ例えば、次のようなコードが記録されている。

Sub Macro1()

'
' Macro1 Macro
' マクロ記録日 : 2005/11/9 ユーザー名 : miyaho_rinn
'

'
Range("A1").Select
ActiveCell.FormulaR1C1 = "test"
Range("A2").Select
End Sub

ちなみにこれはA1セルに"test"と入力してEnterキー押下したときの動作を記録したものである。

記録したマクロを実行してみる

記録したマクロのコードを見るだけではなくて、実際に実行しているところを観察してみることをお勧めする。Visual Basic Editorのステップイン機能で1構文ずつ実行し、実際のExcelがVBAから操作される様子を見比べて確認してみてはいかがだろうか。

ステップイン

【手順】

  1. ExcelのウィンドウとVBEのウィンドウの両方を「元のサイズに戻す」とする。
     可変ウィンドウにして両方のウィンドウが同時に見れるようにしておく。
  2. VBEのウィンドウを選択してアクティブにする。
  3. コードウィンドウで実行させたいコードの任意の部分をクリック、
     Sub〜End Subの中に編集カーソルがある状態にする。
  4. F8キーを押してステップイン開始。
     するとSub ・・・・の行がハイライトされる。
     ハイライトされた行がこれから実行される構文である。
     F8キーを押すごとに1構文ずつ実行され、ハイライト行が次の行へと移動する。

このように一行ずつF8キーを押して実行していくと、どの構文がどの操作をしているか視覚的に確認することが出来る。簡単な操作だが、上達しない方はこのステップインの操作をおろそかにしている人が多い。作成したコードが的確に動作しているかどうかを確認する作業(デバッグ)には必須の操作である。ぜひ習慣的に行うようにして、身に付けてほしい。


前(本) 目次 次(VBEのヘルプ)


SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送