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

エクセルでシート作成するマクロ(If文の活用)(2ページ目)

マクロを読み解いて編集する演習シリーズ。シートを作成するマクロに修正を加えながら、ワークシートの主要メソッドとVBAの基本構文を学習します。本格的なプログラムが簡単に作成できることが実感できます!

緑川 吉行

執筆者:緑川 吉行

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


ワークシートを削除する操作を記録しよう

マクロ記録用に新しいブックを開いて、マクロ記録を開始します。ひとまず、ワークシート「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ステートメントに組み込んでみましょう!
  • 前のページへ
  • 1
  • 2
  • 3
  • 次のページへ

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

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