Vbaを使ってシート名を取得する方法(例あり)


VBA で次のメソッドを使用すると、Excel ブック内の特定のシートの名前を取得できます。

方法 1: アクティブなシートの名前を取得する

 Function GetSheetName()

GetSheetName = ActiveSheet.Name

End Function

この関数はアクティブなシートの名前を返します。

方法 2: シート名を数値で取得する

 Function GetSheetName(N As Integer)

GetSheetName = Sheets(N).Name

End Function

この関数は、指定したn 番目のシートの名前を返します。

次の例は、4 つのシートからなる Excel ブックで各関数を実際に使用する方法を示しています。

例 1: VBA を使用してアクティブ シートの名前を取得する

VBA で次の関数を作成して、Excel ワークブック内の現在アクティブなシートの名前を取得できます。

 Function GetSheetName()

GetSheetName = ActiveSheet.Name

End Function

statsという名前のシートが現在アクティブであると仮定します。

このシートのセルE1に次の数式を入力すると、アクティブなシートの名前が返されます。

 =GetSheetName()

次のスクリーンショットは、この式を実際に使用する方法を示しています。

これは現在アクティブなシートの名前であるため、この関数は統計値を返します。

例 2: VBA を使用してシート名を数値で取得する

VBA で次の関数を作成して、Excel ワークブックのn 番目のシートの名前を取得できます。

 Function GetSheetName(N As Integer)

GetSheetName = Sheets(N).Name

End Function

この関数を作成したら、現在アクティブなシートのセルE1に次の数式を入力して、ワークブックの 2 番目のシートの名前を返すことができます。

 =GetSheetName(2)

次のスクリーンショットは、この式を実際に使用する方法を示しています。

これはワークブックの 2 番目のシートの名前であるため、関数は値teamを返します。

追加リソース

次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。

VBA: ワークブック内のシート数を数える方法
VBA: 別のブックからデータを抽出する方法
VBA: 複数行を挿入する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です