Excelブック内のすべてのワークシート名を取得し、カンマ区切りで表示させる方法
Excelを使用する際、ブック内のすべてのワークシート名を一覧で取得したいと思うことがあります。この記事では、Excelブック内のすべてのワークシート名をカンマ区切りで表示させるユーザー定義関数を作成する方法を解説します。
ユーザー定義関数の作成方法
まずは、Excelブック内のすべてのワークシート名を取得し、カンマ区切りで表示させるユーザー定義関数を作成する方法をご紹介します。以下の手順に従って、関数を作成していきましょう。
- Excelを開き、VBAエディタを起動します(Alt + F11キーでアクセスできます)。
- 「挿入」メニューから「標準モジュール」を選択し、新しい標準モジュールが作成されることを確認します。
- 新しい標準モジュールに以下のコードを貼り付けます。
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ブック内のすべてのワークシート名を取得し、カンマ区切りで表示させる方法を解説します。
- Excelのワークシートを開きます。
- 任意のセルに「=GetAllWorksheetNames()」と入力し、Enterキーを押します。もしくは「関数の挿入→関数の分類:ユーザー定義」から「GetAllWorksheetNames」を選択します。引数はありませんので指定せずにOKします。
- すぐに、そのセルにブック内のすべてのワークシート名がカンマ区切りで表示されることが確認できます。
これで、Excelブック内のすべてのワークシート名を簡単に取得し、カンマ区切りで表示させることができました。このユーザー定義関数は、Excelの操作を効率化するために非常に便利なツールです。特に、複数のワークシートがある大規模なプロジェクトで作業している場合や、ワークシート名の一覧が必要なレポートを作成する際に役立ちます。
関数のカスタマイズ
このユーザー定義関数は、必要に応じてカスタマイズすることができます。例えば、区切り文字をカンマから別の文字に変更したい場合、以下のコードを変更することで簡単に実現できます。
<code>result = result & ", " & ws.Name</code>
この行のカンマ(,)を別の文字に変更するだけで、区切り文字を自由にカスタマイズできます。
まとめ
この記事では、Excelブック内のすべてのワークシート名を取得し、カンマ区切りで表示させるユーザー定義関数を作成する方法を解説しました。この関数を使用することで、ワークシート名の一覧を簡単に取得でき、作業の効率化が図れます。是非、日々の業務で活用してみてください。
コメント