【Excel VBA】ワークブックにシートを追加する

当ページのリンクには広告が含まれている可能性があります。
シートの追加

こんにちは、ユーキです。

今回は、ワークブックにシートを追加する方法を紹介します。

目次

シートの追加方法

シートの追加は簡単です。

現在のワークブックにシートを追加する

ActiveWorkbookに対して、「Worksheets.Add」と書けば、OKです。これでシートを追加できます。

ActiveWorkbook.Worksheets.Add

作業中のシートの直前に新しいシートが追加されます。

ワークブックの先頭にシートを追加する

シートの追加位置を指定した場合、引数Before、引数Afterを使用します。

ワークブックの先頭に新しいシートを追加したい場合は、引数Beforeを指定します。

ActiveWorkbook.Worksheets.Add Before:=ActiveWorkbook.Worksheets(1)
'指定ワークブックは省略することもできます。
ActiveWorkbook.Worksheets.Add Before:=Worksheets(1)

指定したシートの前にシートが追加されるので、最初のシートの前=先頭にシートが追加されます。

ワークブックの末尾にシートを追加する

ワークブックの先頭に新しいシートを追加したい場合は、引数Afterを指定します。

ActiveWorkbook.Worksheets.Add After:=ActiveWorkbook.Worksheets(ActiveWorkbook.Worksheets.Count)
'指定ワークブックは省略することもできます。
ActiveWorkbook.Worksheets.Add After:=Worksheets(Worksheets.Count)

指定したシートの後にシートが追加されるので、最後のシートの後=末尾にシートが追加されることになります。

複数シートを追加する

複数シートを追加したい場合は、引数Countを使用します。

’追加したいシート数を指定する
ActiveWorkbook.Worksheets.Add Count:=2

追加したシートを編集する

追加したシートを編集したい場合は、Addメソッドの戻り値を使います。

Dim sh As Worksheet
’戻り値を代入
Set sh = ActiveWorkbook.Worksheets.Add
’追加したシートのA1セルに「テスト」という文字列を設定
sh.Cells(1, 1).Value = "テスト"

追加したシートの名前を変更したい場合は、Nameプロパティーを設定してください。詳しい使い方は以下の記事を参考にしてください。

まとめ

今回は、ワークブックにシートを追加する方法を紹介しました。

Point
  • Worksheets.Addでシート追加は可能
  • シート追加位置を指定した場合、引数BeforeAfterを使用する
  • 複数シートを追加したい場合、引数Countを使用します。
  • 追加したシートを編集する場合、Worksheets.Addの戻り値を使う

少しでもお役に立てば、幸いです。

スポンサーリンク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

旅好き職業プログラマ。文系大学卒業後、ITソフトウエア開発会社に勤務してプログラミング言語を学ぶ。現在は転職し、プロジェクトマネージャ的ポジションで生産管理システムの開発にあたる。
得意言語は、VB、VB.NET、C#.NET、Java、SQLなど。

目次