Excelブック内の全ワークシート名を取得しカンマ区切りで表示させる

Excelブック内のすべてのワークシート名を取得し、カンマ区切りで表示させる方法

Excelを使用する際、ブック内のすべてのワークシート名を一覧で取得したいと思うことがあります。この記事では、Excelブック内のすべてのワークシート名をカンマ区切りで表示させるユーザー定義関数を作成する方法を解説します。

ユーザー定義関数の作成方法

まずは、Excelブック内のすべてのワークシート名を取得し、カンマ区切りで表示させるユーザー定義関数を作成する方法をご紹介します。以下の手順に従って、関数を作成していきましょう。

  1. Excelを開き、VBAエディタを起動します(Alt + F11キーでアクセスできます)。
  2. 「挿入」メニューから「標準モジュール」を選択し、新しい標準モジュールが作成されることを確認します。
  3. 新しい標準モジュールに以下のコードを貼り付けます。
Function GetAllWorksheetNames() As String
    Dim ws As Worksheet
    Dim result As String

    For Each ws In ThisWorkbook.Worksheets
        If Len(result) = 0 Then
            result = ws.Name
        Else
            result = result & ", " & ws.Name
        End If
    Next ws

    GetAllWorksheetNames = result
End Function

これで、ユーザー定義関数の作成が完了しました。VBAエディタは閉じてワークシートに戻ります。

ユーザー定義関数の使用方法

次に、作成したユーザー定義関数を使って、Excelブック内のすべてのワークシート名を取得し、カンマ区切りで表示させる方法を解説します。

  1. Excelのワークシートを開きます。
  2. 任意のセルに「=GetAllWorksheetNames()」と入力し、Enterキーを押します。もしくは「関数の挿入→関数の分類:ユーザー定義」から「GetAllWorksheetNames」を選択します。引数はありませんので指定せずにOKします。
  3. すぐに、そのセルにブック内のすべてのワークシート名がカンマ区切りで表示されることが確認できます。

これで、Excelブック内のすべてのワークシート名を簡単に取得し、カンマ区切りで表示させることができました。このユーザー定義関数は、Excelの操作を効率化するために非常に便利なツールです。特に、複数のワークシートがある大規模なプロジェクトで作業している場合や、ワークシート名の一覧が必要なレポートを作成する際に役立ちます。

関数のカスタマイズ

このユーザー定義関数は、必要に応じてカスタマイズすることができます。例えば、区切り文字をカンマから別の文字に変更したい場合、以下のコードを変更することで簡単に実現できます。

<code>result = result & ", " & ws.Name</code>

この行のカンマ(,)を別の文字に変更するだけで、区切り文字を自由にカスタマイズできます。

まとめ

この記事では、Excelブック内のすべてのワークシート名を取得し、カンマ区切りで表示させるユーザー定義関数を作成する方法を解説しました。この関数を使用することで、ワークシート名の一覧を簡単に取得でき、作業の効率化が図れます。是非、日々の業務で活用してみてください。

コメント