ハイパーリンクを挿入して任意のセルにジャンプさせる
同じブックのSheet1のD10へ移動するリンクをA1に作ります。
実行前に確認
- A1の値・数式を表示文字で上書きします。信頼できるリンク先だけを使用してください。
1サンプルコード
Sub Example1131()
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("Sheet1")
If MsgBox("A1の内容とリンクを書き換えます。続けますか?", vbYesNo + vbExclamation) <> vbYes Then Exit Sub
ws.Hyperlinks.Add Anchor:=ws.Range("A1"), Address:="", _
SubAddress:="'Sheet1'!D10", ScreenTip:="", TextToDisplay:="リンクを開く"
End Sub図で見る操作の流れ
イメージ図コードの動きを表した概念図です。実際のExcel画面ではありません。
手動:確認に答える
A1の内容とリンクの上書き確認で[はい]を選ぶ
マクロ:リンクを作る
Sheet1!A1に「リンクを開く」と表示する
設定結果:ブック内リンク
移動先は同じブックのSheet1!D10
手動:クリックして移動
A1のリンクをクリックするとD10へ移動する
[いいえ]なら終了します。作成だけではD10へ移動しません。A1の値・数式は上書きされます。
コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。
使い方・実行手順を確認する4つの手順で、コードの使い方を確認できます
- 1
練習用のブックを.xlsm形式で保存し、Sheet1という名前のシートを用意します。A1をリンク用に空けます。
- 2
Alt+F11でVBEを開き、[挿入]→[標準モジュール]へコードを貼り付けます。
- 3
AddressがURLやメール宛先、SubAddressがブック内の移動先です。TextToDisplayで表示文字を変えます。
- 4
マクロ内にカーソルを置いてF5で実行します。A1にリンクができます。クリックして動作を確認します。