
Excel 2013マクロ講座 33回
前回のマクロ講座32回でシート名一覧を作成しました。シートが多い場合は、シートへのリンクも追加した方が便利です。
今回は、Do...Loopステートメントを利用します。
(サンプルファイルは、こちらから 2013マクロ講座33回サンプルデータ)

Sub シート一覧マクロ()
Dim i As Long
For i = 2 To Sheets.Count
Range("A" & i).Value = Worksheets(i).Name
Next i
End Sub
実行すると、A2からシート名をシートの分作成します。

Do Until 条件式 繰り返し実行する処理 [Exit Do] Loopの方です。
Sub シート名一覧ハイパーリンク()
Dim i As Long
i = 2
Do Until Range("A" & i).Value = ""
Worksheets(i - 1).Hyperlinks.Add _
Anchor:=Range("A" & i) _
, Address:=ThisWorkbook.FullName _
, SubAddress:=Range("A" & i).Value & "!A1"
i = i + 1
Loop
End Sub


Sub ハイパーリンク削除()
Worksheets("このシート").Hyperlinks.Delete
End Subとなります。