VBAでExcelのシート名を変更するにはWorksheetオブジェクトのNameプロパティを利用します。 Sheet1という名前のシートがあるのでこのシートの名前をTestに変更してみます。
Sheet1シートの名前をTestに変更するコードは以下になります。
Option Explicit
Sub changeSheetName()
ThisWorkbook.Worksheets(1).Name = "Test"
End Sub
コードを実行するとSheet1の名前がTestに変わります。
ファイル内に複数のシートが存在し、特定のシート名を変更したい場合はシート名をFor Each文で全部検索します
ExcelファイルにSheet1、Sheet2、Sheet3が存在します。
Sheet2の名前をTestに変更してみます。
コードは以下になります。
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
を実行するとchangeSheetName
を呼び出して、Sheet2をTestに名前を変更します。