SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 社員募集 ...

【VBA】Excelのシートの一覧を作る

大量にシートがあるExcelファイルで目次を作るときなどにどうぞ。

作り方

1、Alt+F11を押下(もしくはメニューから、ツール→マクロ→Visual Basic Editorをクリック)

2、Visual Basic Editorが起動したら、開いているExcelのThisWorkbookをダブルクリック(他のシートなどでもかまわない)

3、コードを入力する画面になったら、次のソースを貼り付け

Sub ListSheetsName()

Dim objSheet As Object
Dim intLoop As Integer

intLoop = ActiveCell.Row

For Each objSheet In ActiveWorkbook.Sheets
ActiveSheet.Hyperlinks.Add Anchor:=ActiveWorkbook.ActiveSheet.Cells(intLoop, ActiveCell.Column), Address:="", SubAddress:=objSheet.Name & "!A1", TextToDisplay:=objSheet.Name
intLoop = intLoop + 1
Next

End Sub

4、Visual Basic Editorは閉じてOK。Excelに戻る。

5、どこかのシートで、Alt+F8押下(ツール→マクロ→マクロをクリックでもよい)。

6、マクロ実行ダイアログが表示され、先ほど作成した「ThisWorkbook.ListSheetsName」が一覧にあるので、それを実行。

7、実行すると、ブック内のリンク付きでシートの一覧ができあがる。

関連するメモ

コメント(1)

匿名 2013年4月16日 19:44

有り難うございました。
助かりました!