« セルに移動するリンクを付けた図形を作成する | トップページ | セルの結合を解除して結合されていた全セルに同じ値を入力する »

2020年5月16日 (土)

セルにハイパーリンクを設定する

VBAでハイパーリンクを設定するには
Hyperlinks.Addメソッドを使用します。
Addメソッドには次の5つの引数を指定します。

引数
説明
Anchor
リンクを付けたいセルを指定
Address
他のブック,ファイル,URLを指定
SubAddress
同じブック内のシート,セル位置を指定
TextToDisplay
リンクを付けたセルに表示される文字列を指定
ScreenTip
リンクの上にマウスがのったときに
表示される文字列を指定

VBAで
セルにリンクを設定する方法について
リンク先の種類別に以下の7パターンを見ていきます。

1. 同じシート内のセル
2. 同じブック内の別のシートのセル
3. 別のブック
4. 別のブックの特定セル
5. URL
6. メールアドレス
7. メールアドレス(件名付き)

次のコードは上記7パターンのリンクを作成します。

セルにハイパーリンクを設定するコード:

Sub macro20200516a()
'セルにハイパーリンクを設定する
   
    Sheets.Add
   
    '1.同じシート内のセルへのリンク作成
    ActiveSheet.Hyperlinks.Add _
        Anchor:=Cells(1, 1), _
        Address:="", _
        SubAddress:="A100", _
        TextToDisplay:="A100", _
        ScreenTip:="同じシート内のセルへのリンク"
       
    '2.同じブック内のセルへのリンク作成
    ActiveSheet.Hyperlinks.Add _
        Anchor:=Cells(2, 1), _
        Address:="", _
        SubAddress:="Sheet4!A1", _
        TextToDisplay:="Sheet4!A1", _
        ScreenTip:="同じブックの別シート内のセルへのリンク"
   
    '3.別のブックへのリンク作成
    ActiveSheet.Hyperlinks.Add _
        Anchor:=Cells(3, 1), _
        Address:="C:\Users\username\Documents\Book1.xlsx", _
        TextToDisplay:="C:\Users\username\Documents\Book1.xlsx", _
        ScreenTip:="別のブックへのリンク"
   
    '4.別のブックの特定セルへのリンク作成
    ActiveSheet.Hyperlinks.Add _
        Anchor:=Cells(4, 1), _
        Address:="C:\Users\username\Documents\Book1.xlsx", _
        SubAddress:="Sheet1!A100", _
        TextToDisplay:="C:\Users\username\Documents\Book1.xlsx!Sheet1!A100", _
        ScreenTip:="別のブックの特定セルへのリンク"
   
    '5.URLへのリンク作成
    ActiveSheet.Hyperlinks.Add _
        Anchor:=Cells(5, 1), _
        Address:="https://www.google.co.jp", _
        TextToDisplay:="google", _
        ScreenTip:="URLへのリンク"
   
    '6.メールアドレスのリンク作成
    ActiveSheet.Hyperlinks.Add _
        Anchor:=Cells(6, 1), _
        Address:="mailto:aaa@aaa.co.jp", _
        TextToDisplay:="mailto:aaa@aaa.co.jp", _
        ScreenTip:="メールアドレスのリンク"
   
    '7.メールアドレス(件名付き)のリンク作成
    ActiveSheet.Hyperlinks.Add _
        Anchor:=Cells(7, 1), _
        Address:="mailto:aaa@aaa.co.jp?subject=件名", _
        TextToDisplay:="mailto:aaa@aaa.co.jp?subject=件名", _
        ScreenTip:="メールアドレス(件名付き)のリンク"

End Sub

実行結果:
Vba20200516a

使用Ver:Win10, Excel For Office365

|

« セルに移動するリンクを付けた図形を作成する | トップページ | セルの結合を解除して結合されていた全セルに同じ値を入力する »

コメント

この記事へのコメントは終了しました。