PR

【ExcelVBA】シートを追加して名前を付ける方法(Worksheetsオブジェクト・Addメソッド)

ExcelVBA-シートを追加して名前を付ける方法-アイキャッチ シートの操作

シートを追加する方法と、追加したシートの名前を変更する方法について説明しています。

スポンサーリンク

シートの追加

シートを追加する方法は「Worksheets.Add」メソッドを使用します。

’シートの追加
Worksheets.Add

単純に「Worksheets.Add」を実行するとアクティブシートの手前にシートが追加されます。
「Sheet1」の手前に「Sheet2」が作成されました。

ExcelVBA-シートの追加イメージ
スポンサーリンク

先頭にシートを追加する(指定したシートの手前)

次は先頭にシートを追加する方法についてです。

「Worksheets.Add」メソッドの引数に「Before:=対象のシート」を付けることで指定したシートの手前にシートを挿入することができます。

Worksheets.Add Before:=Worksheets(1)

「Worksheets(1)」で1つ目のシートを指定しているので、下のコードを実行すると1つ目のシートの手前(つまり先頭)にシートを追加することができます。

'1つ目のシートの手前に追加する
Worksheets.Add Before:=Worksheets(1)

コードを実行したイメージです。

「Sheet1」~「Sheet3」の3つのシートがある状態で実行してみます。
マクロを実行すると「Sheet1」の手前に「Sheet4」が挿入されました。

ExcelVBA-1つ目のシートの手前に追加

特定のシートの手前に挿入したい場合はWorksheet(“シート名”)でシート名を指定してください。

Worksheets.Add Before:=Worksheets(“シート名“)

スポンサーリンク

シートの末尾に追加(指定したシートのうしろ)

次はシートの末尾に新規シートを挿入したい場合についてです。

「Worksheets.Add」メソッドの引数に「After:=対象のシート」を付けることで指定したシートの手前にシートを挿入することができます。

末尾に追加したい場合はシートが何個あるかを数えて、最後のシートのうしろ「After」にシートを追加します。

シートの数をカウントする
Worksheets(Worksheets.Count)

'末尾にシート追加
Worksheets().Add After:=Worksheets(Worksheets.Count)

マクロの実行前と実行後のイメージ。

「Sheet1」~「Sheet3」の3つのシートがある状態で実行すると4つ目(末尾)に「Sheet4」が追加されました。

ExcelVBA-シートの末尾に追加

特定のシートのうしろに挿入したい場合はWorksheet(“シート名”)でシート名を指定してください。

Worksheets.Add After:=Worksheets(“シート名”)

スポンサーリンク

追加したシート名の変更

追加したシートのシート名を変更する方法です。
シートを追加すると追加したシートがアクティブ(表示された)状態になります。
なのでアクティブシートの名前を変更を行ってシート名を変更します。

ActiveSheet.Name = “追加したシート”

シートを追加した直後にシート名を変更していきます。

'末尾に追加
Worksheets().Add After:=Worksheets(Worksheets.Count)

'追加したシートの名前を変更
ActiveSheet.Name = "追加したシート"

下のイメージでは末尾にシート追加をして「Sheet4」が作成されますが、すぐに名前を変更しているのでシート名が「追加したシート」になっています。

スポンサーリンク

※コードのコピー利用について

・コードのコピーは自由におこなっていただけます。
・気を付けて作成はしていますがコードには誤りがある可能性があります。
・自身の環境で動作確認をしていますが、すべての方の環境で同様に動くことは保証できません。
・データの破損等の責任は負いかねますのでご自身の責任のもとお使いください。

タイトルとURLをコピーしました