ワークシートを削除する操作を記録しよう
マクロ記録用に新しいブックを開いて、マクロ記録を開始します。ひとまず、ワークシート「Sheet3」を削除する操作を記録しましょう。シート見出しを右クリックして、表示されたショートカットメニューの「削除」をクリックします。注意メッセージが表示されたら「削除」ボタンをクリックします。
ワークシートが削除されたら、「記録終了」ボタンをクリックして、マクロ記録を終了します。
作成されたマクロを読んでみよう
VBEを起動して、作成されたマクロを読み解いてみましょう。1行目の「Sheets("Sheet3").Select」は、「ワークシート『Sheet3』を選択する」操作を表すステートメントです。「オブジェクト.メソッド」の形をした基本的なステートメントですね。2行目の「ActiveWindow」や「SelectedSheets」は、「代名詞のようなプロパティ」としてマクロの基本構文とその読み方(オブジェクト)で紹介しました。「ActiveWindow」は「アクティブなウィンドウ」を返すプロパティ、「SelectedSheets」は「選択されているワークシート」を返すプロパティです。また、「Delete」は、ワークシートを削除するメソッドです(エクセルでシート作成するマクロ(ワークシート追加)で紹介したように「Delete」にカーソルを置いてF1キーを押すと、ヘルプを参照することができます)。
したがって、2行目は、「アクティブなウィンドウの(で)選択されているワークシートを削除する」ステートメントであることがわかりました。このステートメントも「ActiveWindow.SelectedSheets」がオブジェクトを表しているので、「オブジェクト.メソッド」の構文であることがわかります。
ワークシートを削除するマクロを編集
そして、代名詞のようなプロパティによる「ActiveWindow.SelectedSheets」の部分は、1行目の「Sheets("Sheet3")」を指しています。したがって、「Select」と「ActiveWindow.SelectedSheets」を削除して、「Sheets("Sheet3").Delete」という、シンプルな「オブジェクト.メソッド」の形に編集できます。これで、ワークシートを削除するステートメントが完成しました。Sheetsプロパティの引数を「Sheet2」に変更すれば、ワークシート「Sheet2」を削除することもできます。
>作成したステートメントをIfステートメントに組み込んでみましょう!