マクロの記録
マクロとは、あらかじめアプリケーションでの操作を登録しておき、いつでも実行できるようにしたものです。エクセルでは、操作内容の登録にマクロ記録機能を使います。
今回のサンプルでは、「[オートフィルタオプション]ダイアログボックスを呼び出し」→「条件を入力」という手順をその都度操作しなければならなかったものを、「マクロを実行する」という1つだけの操作になるマクロを作成します。マクロにすることで「条件を間違えた」などの操作上のミスもなくなります。
マクロを作るための準備
サンプルファイル“顧客別売上合計.xls”を開き、マクロの記録をしてみましょう。ここでは、マクロを記録する前に表示する[マクロの記録]ダイアログボックスについて解説します。このダイアログボックスでは、マクロの名前やショートカットキーなど、マクロを実行するための情報を設定します。
-
[ツール]メニューの[マクロ]から[新しいマクロの記録]を選択し、[マクロの記録]ダイアログボックスを表示する。
▼図02-01 [マクロの記録]ダイアログボックスの表示【Excel2007の場合】
Excel2007ではメニューバーでなく、リボンを使用します。[マクロ]ボタンは[表示]タブ内に用意されています。
▼図02-02 Excel2007での[マクロの記録]ダイアログボックスの表示また、ステータスバー上のボタンを使って表示することもできます。
▼図02-03 Excel2007での[マクロの記録]ダイアログボックスの表示(2) - [マクロ名]に「売上あり」と入力する。
- [マクロの保存先]に「作業中のブック」を選択する。
- [説明]に「マクロ記録日:2008/XX/XX ユーザー名:moug」と入力する。
- [OK]ボタンをクリックすると、マクロの記録が開始され[記録終了]ツールバーが表示される。
▼図02-04 [マクロの記録]ダイアログボックスマクロ名
どのようなマクロなのかをわかりやすくするマクロ名を指定する。 ショートカットキーマクロを実行するためのショートカットキーを指定する。(省略可)
キーボードのアルファベットや数字を一文字入力して指定する。例えば、「k」と入力すると[Ctrl]+[K]キーでマクロが実行できる。マクロの保存先マクロをどこに保存するかを指定する。
通常の場合は[作業中のブック]に保存するが、エクセルの起動のたびに使用したいマクロは[個人用マクロブック]に保存する。説明これから記録するマクロの説明を記述する。(省略可)
初期値には、マクロ記録日やユーザー名が入力されている場合があるが、マクロの内容がわかりやすいものに変えてもよい。
エクセルの操作をマクロに記録
マクロ記録中のエクセルの操作はすべて記録されます。レコーダーの録音ボタンをオンにした状態をイメージしてみましょう。
-
オートフィルタを設定したいリスト内のセルを選択する。今回はセルA3を選択する。
▼図02-05 セルA3を選択
-
[データ]メニューの[フィルタ]から[オートフィルタ]を選択する。オートフィルタが設定され、セル範囲A3:E3に▼ボタンが表示される。
▼図02-06 オートフィルタ選択
【Excel2007の場合】
Excel2007ではメニューバーではなく、リボンを使用します。[フィルタ]ボタンは[データ]タブ内に用意されています。
▼図02-07 Excel2007での[フィルタ]ボタン -
セルC3の▼ボタンをクリックし、リストから[(オプション...)]を選択すると[オートフィルタオプション]ダイアログボックスが表示される。
▼図02-08 [オートフィルタオプション]ダイアログボックスを表示
【Excel2007の場合】
リストの[数値フィルタ]から[ユーザー設定フィルタ]を選択すると、[オートフィルタオプション]ダイアログボックスが表示されます。
▼図02-09 Excel2007で[オートフィルタオプション]ダイアログボックスを表示 - 売上金額が0円より大きい行だけを抽出するため、[売上金額]に「0」と入力する。
- 右側のボックスの▼ボタンをクリックし、「より大きい」を選択する。
- [OK]ボタンをクリックすると、売上金額が0円より大きいデータだけが抽出される。
▼図02-10 [オートフィルタオプション]ダイアログボックス
- [記録終了]ツールバーの[記録終了]ボタンをクリックし、マクロの記録を完了する。
▼図02-11 マクロの記録終了
【Excel2007の場合】
Excel2007ではツールバーでなく、[記録終了]ボタンはステータスバーに表示されます。
▼図02-12 マクロの記録終了
マクロの記録時に、マクロに不必要な操作や異なる操作をしてしまうと、その操作も記録されてしまいますが、その場合、記録をしなおすことができます。上記手順1〜4の操作を行い、手順5の[OK]ボタンをクリックすると、図02-13のような画面が表示されます。ここで[はい]ボタンをクリックすると、「売上あり」というマクロ名でマクロの記録が開始されます。
-
[はい]ボタンをクリックすると、マクロの記録が開始される。
▼図02-13 マクロの記録の置き換え
マクロ記録を開始すると、エクセルの操作はすべて記録されてしまいます。「セルを選択した」などの操作も記録されるので、あらかじめマクロにする操作を整理しておくことが大切です。
ここで、マクロを記録するときのコツを1つ紹介しておきましょう。今回のように、現在のシートに対して操作するマクロを作りたいときは、マクロ記録中に「シートを選択する」操作を行わなければ「シートを選択する」操作は記録されませんので、現在選択されているシートに対してマクロが実行されます。
特定のシートに対して操作するマクロを作りたいときは、あらかじめ、別シートを選択した状態でマクロ記録を開始し、特定のシートを選択します。すると、「シートを選択する」という操作が記録され、マクロを実行すると「シートを選択する」操作が行われます。
このコツは『エクセルの操作をそのまま記録して実行する』マクロ記録の特徴を生かしたものですので、ぜひ理解して活用できるようにしましょう。
では、次のページでマクロを実行してみましょう。