ExcelVBATips

マクロ以外での効率化!

VBAやマクロを勉強している人はもっと仕事を効率化しよう!という方が多いと思います。
マクロを覚えるのもいいのですが、それ以外にも効率化できる部分はあります。

たとえば、ツールバー。
ワークシートの挿入やセルの結合など、意外とよく使うボタンが入っていません。
Excelでは自分のよく使う機能のボタンを追加したりできるので、
いろいろカスタマイズすると使いやすくなります。

1.ツールバーによく使う機能のボタンを追加する


ツールバーの空いているところで右クリックをし、「ユーザー設定」から
ボタンを追加することができます。

ユーザー設定のコマンドタブから、追加したいボタンをドラッグするだけです。
ツールバーのカスタマイズ01

私は以下のような機能を追加しています。
・改ページプレビュー

・ワークシートの挿入
・セルの結合
・セルの結合の解除
・横方向に結合
・オートフィルタ
・電卓

・取り消し線

図形描画では
・グループ化
・グループ解除
・最全面に移動
・最背面に移動

など。
かなりカスタマイズしているので、たまに初期設定のExcelをみると
ボタンの数が少なすぎて「あれっ!?」となります。
ツールバーのカスタマイズ02

2.よく使うファイルのショートカットを追加する


また、ボタンだけではなくメニューも追加できます。
追加方法はボタンと同じ。

メニュー(押すとコマンドが出てくる)を追加したいときは新しいメニュー、
コマンドを追加したいときはマクロの「ユーザー設定メニュー項目」をドラッグします。
ツールバーのカスタマイズ03

追加してみるとこんな感じ。
ツールバーのカスタマイズ04

まだコマンドの動作を設定していないので、押しても何にもなりません。

ユーザー設定が開いている状態でコマンドを右クリックすると、
メニューが表示されます。
ツールバーのカスタマイズ05

ハイパーリンクの設定があり、ここでファイルへのハイパーリンクの設定をしておくと、
ボタンを押すと同時にそのファイルが開きます。

毎日使うファイルは、ショートカットとして登録しています。
使用頻度の高いファイルにすぐアクセスできて便利です。

2007からはインターフェースがガラっと変わってしまっていますが・・・・・・。
私が今働いているところはまだまだExcel2002/2003が現役です。

ExcelVBATips

変数の値を確認しながらデバッグする

マクロが上手く動かない場合、変数の値が意図したものになっていないのが
原因で起こることが多いです。

そこで、マクロを作る時には変数の値を確認しながらマクロを実行し、
動作確認するということが重要になってきます。

一番簡単な方法は、ステップインで実行し、変数にカーソルを当てることです。
すると、現在の変数の値が表示されます。


「test = 1」実行前は変数testの値は「0」
デバッグ03


「test = 1」実行前は変数testの値は「1」
デバッグ04


また、ローカルウィンドウを表示させておくと、
ローカルウィンドウに変数の値とデータ型が表示されます。
デバッグ05

ExcelVBATips

ステップインで1行ずつ実行する

普通、マクロを実行すると最初から最後まで一気に実行されてしまうので、
どこが正しくてどこが間違っているのかわかりにくい場合があります。

そういう場合は、マクロを1行ずつ実行する
ステップイン」で実行するとわかりやすくなります。


実行したいプロシージャにカーソルを合わせてF8キーを押すと、
最初の行が黄色くなります。

再度F8キーを押すと、黄色くなっている行が実行され、次の行が黄色くなります。
デバッグ01

メニューバーから実行する時は、マクロの画面で[ステップイン(S)]を押します。
デバッグ02


ExcelVBATips

変数の宣言を強制する

Visual Basic Editorの設定で「変数の宣言を強制する」という
オプションにチェックを入れたと思います。

これにチェックを入れると、チェックを入れてから作成したモジュールには、
冒頭に「Option Explicit」というステートメントが
自動的に記述されるようになります。

Option Explicitステートメントを記述すると、
宣言していない変数を使おうとしたときにエラーが表示されるようになります。
変数11


一見不便に見えますが、変数名のつづり間違いのチェックに非常に役に立ちます。


自分では同じように打ったつもりでも、変数名が微妙に間違ってた、というのはよくある話。

Option Explicitステートメントがないと、それぞれ別の変数として扱われてしまいます。
すると、処理は当然、思ったとおりにいきません。

Option Explicitステートメントを記述しておくと、
そういったミスを未然に防げますので、設定しておくことをお勧めします。



Powered by Seesaa
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。