ハイパーリンクの挿入
VBAを使ってセルにハイパーリンクを挿入する方法です。
エクセル上だと[セル右クリック]→[ハイパーリンク(I)...]→[ハイパーリンクの挿入]・・・と同じ動作を再現します。
関数、メソッドなど
HyperlinksオブジェクトのAdd メソッドを使用します。Hyperlinks.Add(Anchor, Address, SubAddress, ScreenTip, TextToDisplay)
AnchorとAddressは必須です。
Anchorとはハイパーリンクを設定する対象でセルやオブジェクトが入ります。
Addressは、そのままの意味で開く先のアドレスです。ワークブックやURLなどです。
サンプルコード
Sub hl()
'セルA1にハイパーリンクを設定
With ActiveSheet
.Hyperlinks.Add Anchor:=.Range("a1"), _
Address:="https://excwlvba.blogspot.jp/"
End With
End Sub
解説
上記サンプルではアクティブシートにハイパーリンクの設定をしています。| 名前 | 必須/オプション | 説明 |
|---|---|---|
| Anchor | 必須 | ハイパーリンクのアンカーを指定 Range オブジェクトまたは Shape オブジェクトを指定 |
| Address | 必須 | ハイパーリンクのアドレス |
| SubAddress | オプション | サブアドレス (ブックの場合シートやセルなど) |
| ScreenTip | オプション | ハイパーリンク上をマウスポインターで指した場合に表示されるヒント |
| TextToDisplay | オプション | ハイパーリンクで表示されるテキスト |
サンプルコード 2
Sub hl()
'セルA1にハイパーリンクを設定
With ActiveSheet
.Hyperlinks.Add Anchor:=.Range("a1"), _
Address:="https://excwlvba.blogspot.jp/", _
ScreenTip:="マウスオーバーで表示される文字", _
TextToDisplay:="セルに表示する文字"
End With
End Sub
サンプルコード 3
Sub hl()
'別のワークブックをリンク先として設定
With ActiveSheet
'セルA1にハイパーリンク挿入
.Hyperlinks.Add Anchor:=.Range("a1"), _
Address:="F:\test\book1.xlsx", _
SubAddress:="Sheet2!A2", _
TextToDisplay:="セルに表示する文字"
End With
'リンク先は[F:\test\]にある[book1.xlsx]
'book1.xlsxのSheet2!A2をアクティブにし選択
End Sub
関連・類似ページ
ハイパーリンクを開くハイパーリンクを削除する