VBAでExcelのシート名を変更するには
WorksheetオブジェクトのNameプロパティを利用します。
Sheet1という名前のシートがあるので
このシートの名前をTestに変更してみます。
Sheet1シートの名前をTestに変更するコードは以下になります。
1 2 3 4 5 6 7 |
Option Explicit Sub changeSheetName() ThisWorkbook.Worksheets(1).Name = "Test" End Sub |
コードを実行するとSheet1の名前がTestに変わります。
ファイル内に複数のシートが存在し、特定のシート名を変更したい場合は
シート名をFor Each文で全部検索します
ExcelファイルにSheet1、Sheet2、Sheet3が存在します。
Sheet2の名前をTestに変更してみます。
コードは以下になります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
Option Explicit Sub changeSheetName(wb As Workbook, beforeName As String, afterName As String) '################################################################################### 'beforeNameに該当するシート名をafterNameに変更する '################################################################################### Dim ws As Worksheet For Each ws In wb.Worksheets If ws.Name = beforeName Then ws.Name = afterName GoTo Finally End If Next ws Finally: Set ws = Nothing End Sub Sub test_changeSheetName() Call changeSheetName(ThisWorkbook, "Sheet2", "Test") End Sub |
test_changeSheetName Functionを実行すると
changeSheetNameを呼び出して、Sheet2をTestに名前を変更します。
コメント