Excel VBAで指定したシートの名前の変更をする - Nameプロパティ

Excel VBAでシートの名前を変更するには、Nameプロパティを使用します。



Homeに戻る > Excel シートのTipsへ

名前の取得も可能です。

下のコードでは、指定されたシート名を順に検索し、見つかればNameプロパティでシート名を変更しています。

シート名の検索は、For Each~Nextを使い総当たりで調べます。

For Eachに使用する変数は、シートを受け取るのでオブジェクト型を使用します。

グループ名はActiveWorkbook.Worksheetsを使い、アクティブなブックのワークシートの集合を指定します。

同様のNameプロパティを使用した「VBAでシートをコピーし名前をつける」を掲載しています、参照してください。



指定したシートの名前の変更をするVBA 標準モジュールコード

For Each tsheet In ActiveWorkbook.Worksheetsで、ブックの全シートをループします。

シート名が、引数の変更前のシート名ならば、Nameプロパティで2番目の引数に名前を変更します。

Public Sub SheetNameChange(nowsheet As String, newsheet As String)
  Dim tsheet As Object
  
  For Each tsheet In ActiveWorkbook.Worksheets
    If tsheet.Name = nowsheet Then
        tsheet.Name = newsheet
    End If
  Next
End Sub

実行前のシート

実行前

実行結果のシート

上で作成したプロシージャーを、下のVBAで呼び出します。

SheetNameChange "Sheet1", "2006年"

SheetNameChangeの1番目の引数は変更前のシート名なので"Sheet1"です。

2番目の引数は変更するのシート名なので"2006年"です。

実行するとしたのように、"Sheet1"が"2006年"に変更できました。

シート名が変更された


Homeに戻る > Excel シートのTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved