VBA~ワークシートの名前を変更しよう~Excel
ワークシートの名前を変更するときはWorksheet.Nameプロパティを使います。Worksheetオブジェクトの取得方法は複数あるのでシート名、インデックス番号、オブジェクト名から取得し、そのシートの名前を変更する方法をそれぞれ解説します。
シート名から取得して変更
シート名からWorksheetオブジェクトを取得するときはWorksheets("シート名")またはSheets("シート名")で指定できます。シート名を変更したい時はWorksheets("シート名").Name = "変更後の名前" でシート名が変更されます。下のコードを実行するとSheet1がシート1に、Sheet2がシート2に変更されます。
Sub test1() Worksheets("Sheet1").Name = "シート1" Worksheets("Sheet2").Name = "シート2" End Sub
インデックス番号から取得して変更
インデックス番号からWorksheetオブジェクトを取得するときはWorksheets(インデックス番号)またはSheets(インデックス番号)で取得できます。インデックス番号は左のシートから1,2,3・・・となっています。シート名を変更したい時はWorksheets(インデックス番号).Name = "変更後の名前" でシート名が変更されます。下のコードを実行するとSheet1がシート1に、Sheet2がシート2に変更されます。
Sub test2() Worksheets(1).Name = "シート1" Worksheets(2).Name = "シート2" End Sub
オブジェクト名から取得して変更
オブジェクト名からWorksheetオブジェクトを取得するときはプロジェクトエクストプローラーのMicrosoftExcelObjectsフォルダ内にSheet1(Sheet1)のように表示されているものの()の中がエクセルの本画面で表示されているシート名で、()の外がオブジェクト名になります。オブジェクト名を変更したい場合はプロパティウィンドウの(オブジェクト名)から変更できます。オブジェクト名だけで指定できるのでシンプルなコードになりますね。Sheet1のオブジェクト名をデフォルトのSheet1としSheet2とSheet3のオブジェクト名をそれぞれシート2、aに変更します。
シート名を変更したい時はオブジェクト名.Name = "変更後の名前" でシート名が変更されます。下のコードを実行するとSheet1がシート1に、Sheet2がシート2に、Sheet3がシート3に変更されます。
Sub test3() Sheet1.Name = "シート1" シート2.Name = "シート2" a.Name = "シート3" End Sub