スタイル

スタイル

イベントの抑止に併せて、処理速度向上処理を行う

イベントの抑止が必要なことは、別の記事で説明しました。 ここでは、その際にマクロの処理速度向上の処理を合わせて行うことを説明します。 具体的には、次のようなコードを利用しています。 Sub DsblEvents() With Applica...
スタイル

マクロの実行は、イベントプロシージャで行う

VBAを実行するための方法には、いろいろあります。 もちろんイベントプロシージャを勧めるサイトもあります。 VBAアセットは、「一見普通のエクセルのシートに見えるが、その裏でマクロが働いて、便利な機能を発揮している」という「羊の皮をかぶった...
スタイル

コードはシートモジュールに書く

VBAの達人たちは、その多くがマクロのコードを標準モジュールに書くことを推奨しています。 しかし、VBAアセットでは、コードは、シートモジュールに書くというスタイルを採っています。その理由は、次の2つです。 そのシートに関係の強いプロシージ...
スタイル

変数の宣言は必ず行う

VBAアセットでは、変数の宣言は必ず行うようにしています。 変数を宣言しておくと誤った値が変数に代入された時点でエラーが生じるので、デバッグの際にどこに誤りがあるのかがわかりやすくなるからです。 このため、VBA画面のオプション画面の編集タ...
スタイル

可能な限りマクロではなくワークシート機能を使う

エクセルのマクロを使い始めると、案外悩むのが、「マクロとワークシートの機能のどちらでも同じことが実現できる場合、そのどちらを使うか」という問題です。ネットを検索すると、この問題について書かれているサイトがいくつも見つかります。 いろいろな考...
スタイル

表は必ずテーブルにする

法律事務所の仕事では、エクセルをデータベースとして使うことが多くあります。エクセルをデータベースとして使用する場合に便利な機能として、テーブル機能があるのですが、使っている人は少ないようです。 テーブル機能がどうして便利なのかについては、こ...
スタイル

変数の命名には、ハンガリアン法を用いる

変数の命名法については、VBAの達人たちの間でも、いろいろな考え方があるようです。極端な例としては、漢字を使う方もいます。VBAアセットでは、ハンガリアン法を用いています。理由については、こちらの記事に書かれているとおりです。 また、カウン...
スタイル

イベントは連鎖させない

イベントプロシージャの一番の問題点は、イベントの連鎖をコントロールしなければならないことです。「あるセルの値が変わる」→「イベントが起動する」→「別のセルの値が変わる」→「イベントが起動する」というようにイベントが連鎖すると、最悪の場合それ...