今回は、ブックに新しいワークシートを追加してみましょう。ワークシートの名前も変更してみます。
では、以下のVBAコードを記述してみてください。
Sub シート挿入()
Dim i As Integer
For i = 1 To 3
Worksheets.Add After:=Worksheets("Sheet3")
ActiveSheet.Name = "用紙" & i
Next i
End Sub
このVBAは、回数を指定して処理を繰り返す、For.....Nextステートメントを使用しています。ブック内にワークシートを3枚追加して、追加したワークシートに名前を自動的に連番で付けていっています。
では、VBAコードの説明をしていきましょう。
2行目:変数iを宣言します。データ型は整数型です。
4行目:最初変数iに1を代入し、iが3になるまで繰り返す指定です。
5行目:ワークシート「sheets3」の後ろ(右側)にワークシートを追加しています。Addメソッドを利用していますが、書式は後で記述します。
6行目:追加されたワークシートの名前を文字列「用紙」と変数iの番号を組み合わせた名前にします。
WorksheetsオブジェクトのNameプロパティを使って、シート名を変更しています。
7行目:For文に戻る指定。
このVBAのExcel上の結果は下のとおりになります。
sheets.Add (Before、After、Count、Type)
sheets :対象となるシートオブジェクトを指定
Before :指定したシートの前に新規シートを追加
After :指定したシートの後に新規シートを追加
Count
:追加するシート数を指定
Type :追加するシートの種類を定数で指定
Addメソッドの引数Typeの種類には以下のようなものがあります。
定数 | シートの種類 |
---|---|
xlWorksheet | ワークシート |
xlChart | グラフ |
xlExcel4MacroSheet | Excel4.0マクロ |
xlExcel4IntlMacroSheet | インターナショナルマクロシート |