Excel VBA セルや図形にハイパーリンクを設定する

スポンサーリンク

セルや図形にハイパーリンクを設定する方法

ハイパーリンクとは、リンク先が設定されている文字列や図形のことです。ハイパーリンクをクリックすると設定されているリンク先にジャンプすることができます。

ファイルやWebページ、電子メールアドレス、ブック内の別の場所へのハイパーリンクを設定することができます。

Hyperlinks【ハイパーリンクス】プロパティ

ワークシートのハイパーリンクを表すHyperlinks【ハイパーリンクス】コレクションを取得するには、Worksheet【ワークシート】オブジェクトのHyperlinks【ハイパーリンクス】プロパティを使用します。

Hyperlinks【ハイパーリンクス】プロパティの書式と設定値の説明

オブジェクト.Hyperlinks
【戻り値】Hyperlinks【ハイパーリンクス】コレクション

  • オブジェクト(必須)
    ハイパーリンクを設定するシートをWorksheet【ワークシート】オブジェクトで指定します。

Hyperlinks【ハイパーリンクス】コレクションの主なメソッド一覧

メソッド 内容
Add【アド】 セルや図形にハイパーリンクを設定します。
Delete【デリイト】 ハイパーリンクを解除します。

Add【アド】メソッド

セルや図形にハイパーリンクを設定するには、Hyperlinks【ハイパーリンクス】コレクションのAdd【アド】メソッドを使用します。

Add【アド】メソッドの書式と設定値(引数)の説明

[]内は省略可能です。
コレクション.Add(Anchor, Address[, SubAddress, ScreenTip, TextToDisplay])

  • コレクション(必須)
    Hyperlinks【ハイパーリンクス】コレクションを指定します。
  • Anchor【アンカー】(必須)
    ハイパーリンクの設定先をオブジェクト型の値で指定します。セルに設定する場合はRange【レンジ】オブジェクトを指定します。図形に設定する場合はShape【シェイプ】オブジェクトを指定します。
  • Address【アドレス】(必須)
    URLやファイルのパスなど、ハイパーリンクのアドレスを文字列で指定します。
ケース 指定方法
Webページ
リンク先にする場合
「Address:=”https://kosapi.com”」
のようにWebアドレスを指定します。
メールアドレス
リンク先にする場合
「Address:=”mailto:メールアドレス”」
のようにアドレスの前にmailto:を記述します。
別ファイル
リンク先にする場合
「Address:=”C:¥user¥Document¥ファイル.xlsx”」
のようにファイル名をドライブ名から指定します
ブック内のシート
リンク先にする場合
「Address:=””」のように空文字を指定して
引数SubAddressにリンク先のシートを指定します。
  • SubAddress【サブアドレス】(省略可)
    ハイパーリンクのサブアドレスを指定します。指定したWebページ内のサブアドレスや指定したワークシートのセルなどを指定します。
  • ScreenTip【スクリーンチップ】(省略可)
    ハイパーリンク上をマウス ポインターで指した場合に表示される文字列を指定します。
  • TextToDisplay【テキストトゥディスプレイ】(省略可)
    セルや図形の表示する文字列を指定します。

ブック内のシートをハイパーリンクに設定するコード例

Sub シートリンク()
Dim i As Long
For i = 2 To Sheets.Count
ActiveSheet.Hyperlinks.Add _
Anchor:=Cells(i, 2), _
Address:="", _
SubAddress:=Sheets(i).Name & "!A1", _
ScreenTip:=Worksheets(i).Name, _
TextToDisplay:=Sheets(i).Name
Next i
End Sub

実行前

実行後


サンプルコード例リンク

住所データをGoogleMapにリンクする方法


Delete【デリイト】メソッド

設定したハイパーリンクを解除するには、Hyperlinks【ハイパーリンクス】コレクションのDelete【デリイト】メソッドを使用します。

Hyperlinks.Delete【ハイパーリンクスデリート】メソッドの書式と設定値の説明

[]内は省略可能です。
コレクション[(Index)].Delete

  • コレクション[(Index)](必須)
    Hyperlinks【ハイパーリンクス】コレクションの引数にインデックス番号を指定して解除するハイパーリンクを指定します。インデックス番号は作成した順番です。引数のインデックス番号を省略した場合は、セルや図形のハイパーリンクがすべて削除されます。

※ハイパーリンクは解除されますが設定された文字列はそのまま残ります。

シート上のすべてのハイパーリンクを解除するコード例

Sub リンク削除()
ActiveSheet.Hyperlinks.Delete
End Sub

以上で、セルや図形にハイパーリンクを設定する方法についての解説を終了します。
ありがとうございました。

スポンサーリンク

関連記事・広告