Excel VBAの使い方/マクロ・VBA

エクセルのマクロ編集(With文の編集ポイント)(4ページ目)

「エクセルのマクロ編集(編集のポイント)」で作成・編集してきたVBAプログラムを完成させます。一緒に作業を進めながら、徐々に読みやすくてわかりやすいプログラムになる過程を体験してみて下さい!

緑川 吉行

執筆者:緑川 吉行

エクセル(Excel)の使い方ガイド


マクロ編集の手順のまとめ

編集作業はこれで終了です。完成したプロシージャを見直してみると、実際に記録した内容が整然と並んでいて、より読みやすく、意味の分かるプロシージャになったことが確認できます。


ここで、これまで行ってきた編集手順をまとめてみましょう。

■Selectionプロパティの置き換え
Selectionプロパティを、参照している実際のオブジェクト名に置き換え、余計なステートメントを削除しました。
■勝手に記述される操作の削除
「Withステートメントの不要な記述」や「メソッドの引数の不要な記述」を削除しました。
■削除した方がスッキリする操作を削除
「画面スクロール」の操作を削除しました。削除した方がスッキリする操作には、この他に「ウィンドウを移動した操作」や「ウィンドウを最小化・最大化した操作」などもあります。
■Withステートメントでまとめる
同じオブジェクトに対する操作部分は、Withステートメントでまとめます。ちなみに、Withステートメントを使うとオブジェクトを参照する回数が減るため、実行速度が速くなります。
■実行順序を変更する
Withステートメントでまとめる作業を行う上で、実行順序を変更できるところは変更します。

これら5項目の視点で編集を進めれば、一通りスッキリとしたプロシージャになると思います。なお、今回は、解説の都合でこの順番で編集を進めましたが、順番にこだわる必要はありません。

また、Selectionプロパティの置き換え作業は、間違いのない編集作業に必要な過程といえますが、オブジェクト名にわざわざ置き換えた部分をWithステートメントでまとめるときに削除していることなどを考えると、ちょっと無駄な作業ともいえます。慣れてきたら、もっと効率的に作業を進めるように工夫してみましょう。

「記録して編集する」作業は非効率?

マクロ記録でプロシージャを自動生成し、1行ずつ読み解きながら編集する手順をご覧頂きましたがいかがでしたでしょうか? 慣れないうちは、読み解く際にひとつひとつのキーワードをヘルプで調べる、といった作業も必要になるでしょう。「これなら最初から書いた方が早い」と感じる方もいらっしゃると思います。確かに、様々なキーワードを覚えてきたら、書いた方が断然早いです。

しかし、書いたプロシージャには、ミスタイプのリスクもありますし、動作確認するまでは「キチンと動くかどうか」は保証できません。一方、マクロ記録で記述されたプロシージャは、自動生成されたものなのでミスタイプのリスクはありませんし、「実際に動かした」結果なので、マクロの編集で間違わなければ、キチンと動くという安心感もあります。

●初めて記録する操作や覚えていない操作は「記録して編集」
●見慣れて覚えてきた操作はサクッと「書く」
といったように使い分けると良いでしょう。
【編集部おすすめの購入サイト】
楽天市場で Excel 関連の商品を見るAmazon で Excel 関連の商品を見る
  • 前のページへ
  • 1
  • 2
  • 3
  • 4
※記事内容は執筆時点のものです。最新の内容をご確認ください。
※OSやアプリ、ソフトのバージョンによっては画面表示、操作方法が異なる可能性があります。

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます