K-fix Learning & Playing

基礎編


VBAにTRY ⑤

今回は、ブックに新しいワークシートを追加してみましょう。ワークシートの名前も変更してみます。
では、以下の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上の結果は下のとおりになります。

Addメソッドの書式

sheets.Add (Before、After、Count、Type)

sheets  :対象となるシートオブジェクトを指定
Before  :指定したシートの前に新規シートを追加
After   :指定したシートの後に新規シートを追加
Count   :追加するシート数を指定
Type   :追加するシートの種類を定数で指定

Addメソッドの引数Typeの種類には以下のようなものがあります。

引数Typeの定数の種類
定数 シートの種類
xlWorksheet ワークシート
xlChart グラフ
xlExcel4MacroSheet Excel4.0マクロ
xlExcel4IntlMacroSheet インターナショナルマクロシート