Option Explicit
Public Sub 目次シート作成()
On Error GoTo Exception
Dim strNewSheetNm As String
strNewSheetNm = InputBox("目次シートの名前を入力してください。")
Dim objNewSheet As Worksheet
Set objNewSheet = ThisWorkbook.Worksheets.Add
objNewSheet.Name = strNewSheetNm
Dim lngRow As Long
lngRow = 1
Dim objSheet As Excel.Worksheet
For Each objSheet In Worksheets
Dim strSheetNm As String
strSheetNm = objSheet.Name
If (strSheetNm <> strNewSheetNm) Then
objNewSheet.Hyperlinks.Add _
Anchor:=objNewSheet.Cells(lngRow, 1), _
Address:="", _
SubAddress:=strSheetNm & "!A1", _
TextToDisplay:=strSheetNm
lngRow = lngRow + 1
End If
Next
Set objNewSheet = Nothing
On Error GoTo 0
Exit Sub
Exception:
Call MsgBox(CStr(Err.Number) & ":" & Err.Description, vbOKOnly + vbCritical)
Err.Clear
End Sub
|