After:=Worksheets(Worksheets.Count)でシートを追加
Worksheets.Addで新しいシートを追加する時に、After:=Worksheets(Worksheets.Count)と指定すると、シートの最後(1番右)に追加されます。
コード
1 2 3 4 |
'ワークシートの最後(右側)に追加 Worksheets.Add After:=Worksheets(Worksheets.Count) |
解説
After:=Worksheets(Worksheets.Count)を分解して説明すると
- After:指定したシートの右側
- Worksheets:ワークシートの集まり(最後に複数形のs)
- Worksheets.Count:ワークシートの数
です。
また、Worksheets(数値)という書き方は、「ワークシートの中の何番目のシート」という意味です。なので、Worksheets(Worksheets.Count)は、1番最後のシートになります。
つまり、After:=Worksheets(Worksheets.Count)は、「最後のシートの右側」になります。
POINT
最後のシートは、Worksheets.Countを使って指定しましょう。
数値の3などでシート数を直接書くと、シート数が変わった時にプログラムの修正が必要になってしまいます。
でも、このWorksheets.Countを使った書き方であれば、シートの数が変わってもプログラムの修正が不要だからです。
その他テクニックは、次の記事を参考にしてください。
https://excel-toshokan.com/vba-sheet-add/