Excelシートの追加

<< エクセルVBAのワークシート操作一覧 :前の記事

こちらでは、SheetsコレクションオブジェクトAddメソッドを利用して、Excelの新しいシートを作成する方法について解説しています。

メソッドとは、オブジェクトを操作する命令文のことでオブジェクトの動作になります。 メソッドを利用するにはオブジェクト名とメソッド名の間に「.(ピリオド)」で結んで記述します。

オブジェクト名.メソッド名

目次

はじめに

こちらでは、Addメソッドを利用したExcelに新しいシートを作成する方法について解説します。今回は、SheetsコレクションオブジェクトのAddメソッドを利用しますが、Addメソッドは指定するオブジェクトによって利用方法が異なりますので注意が必要です。

利用するメソッドについて

今回利用するメソッドは以下になります。

  • Addメソッド

Addメソッドとは

SheetsコレクションオブジェクトのAddメソッド新しいワークシート、グラフシート、マクロシートを作成します。

Sheets.Add(Before, After, Count, Type)

引数省略で新しいワークシートを作成するサンプルコード

今回のVBAコードはExcelに新しいワークシートを作成するマクロになります。尚、今回指定する引数は省略しています。


Sub sample()

    Sheets.Add

End Sub

実行結果

アクティブシート「Sheet1」シートの直前に新しい「Sheet4」シートを作成します。

Addメソッドの引数なしでシート作成

解説

sampleプロシージャSubステートメントに引数は設定されていません。SheetsコレクションオブジェクトのAddメソッドには、引数を省略して処理しています。引数を省略した場合は、アクティブシートの直前にワークシートが1枚作成されますので、アクティブシート「Sheet1」シートの直前に新しい「Sheet4」シートが作成されました。そして、最後はEndステートメントを利用してsampleプロシージャを終了させます。

引数を指定して新しいワークシートを作成する

今回のVBAコードはExcelに新しいワークシートを作成するマクロになります。尚、今回は引数を指定しています。


Sub sample()

    Sheets.Add Before:=Worksheets(3)

End Sub

実行結果

Addメソッドの引数ありでシート作成

解説

SheetsコレクションオブジェクトのAddメソッドには、引数Beforeに「Worksheets(3)」を設定しています。引数Beforeは、指定したオブジェクトのシートの直前に新しいシートを追加しますので、こちらではWorksheets(3)の「Sheet2」シートの直前に「Sheet5」シートが作成されました。

引数を指定して新しいグラフシートを作成する

今回のVBAコードはExcelに新しいグラフシートを作成するマクロになります。尚、今回は引数を指定しています。


Sub sample()

    Sheets.Add After:=Worksheets(3), Count:=2, Type:=xlChart

End Sub

実行結果

Addメソッドの引数ありでグラフシート作成

解説

SheetsコレクションオブジェクトのAddメソッドには、引数Afterに「Worksheets(3)」を設定しています。引数Afterは、指定したオブジェクトのシートの直後に新しいシートを追加します。また、引数Countは作成するシートの数で「2」を、引数Typeは作成するシートのタイプでグラフシートである「xlChart」を設定しています。

引数Typeは、規定値がワークシートの「xlWorksheet」ですので、ワークシートを追加する場合は設定する必要はありません。また、こちらでは名前付き引数を使用して引数設定していますが、「,(カンマ)」区切りでの設定は以下のようになりますので、参考にしてください。


Sub sample()

    Sheets.Add , Worksheets(3), 2, xlChart

End Sub

まとめ

今回は、SheetsコレクションオブジェクトのAddメソッドを利用して、Excelの新しいシートを作成する方法について解説しました。引数を設定することでシートの種類やシートの数など指定することができますので、適宜設定するようにしましょう。次回は、エクセルVBAでExcelシートをアクティブにする方法について解説します。

エクセルVBAのワークシート操作一覧

次の記事: エクセルVBAでExcelシートをアクティブにする >>

Excel VBAでIEを思いのままに操作できるプログラミング術 Excel 2013/2010/2007/2003対応

近田 伸矢, 植木 悠二, 上田 寛

IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。

  • このエントリーをはてなブックマークに追加
ExcelのVBAについてのQ&A掲示板

↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください^^

VBAのInternetExplorer操作入門

↑ExcelのVBAをマスターできたら、エクセルVBAのIE(InternetExplorer)操作にも挑戦してみてください^^

VBAのIE制御入門RSS

RSSフィードを登録すると最新記事を受け取ることができます。

VBAIE操作のスカイプレッスン

エクセルVBAのステートメント

こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのオブジェクト

こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのプロパティ

こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのメソッド

こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのイベント

こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。