Hyperlink.Followメソッド
既に設定されているハイパーリンクを実行するにはHyperlink.Followメソッドを使用します。
ハイパーリンクをクリックすると文字色が紫色になりますが、Hyperlink.Followメソッドを使った場合はハイパーリンクの文字色は変わりません。
リンク先が存在しない場合やインターネットに接続されていない場合は実行時エラーになるため、エラー処理は必須になります。
ハイパーリンクのセルなどは不要で直接URLを開くWorkbook.FollowHyperlinkメソッドについては「VBAでWEBページをハイパーリンク無しで開く」をご参照ください。
構文
1 |
Sub Object.Hyperlink.Follow([NewWindow], [AddHistory], [ExtraInfo], [Method As MsoExtraInfoMethod], [HeaderInfo]) |
Object | Hyperlinkオブジェクトの親オブジェクトにはWorksheetオブジェクトまたはRangeオブジェクトを指定します。 | ||||||
NewWindow | 省略可。リンク先を新しいウインドウで表示する場合はTrue、そうでない場合や省略した場合はFalseを指定します。 | ||||||
AddHistory | 省略可。使用されません。 | ||||||
ExtraInfo | 省略可。GETメソッドやPOSTメソッドの情報を指定します。GETメソッドの場合はURLの?に続く追加パラメータを指定します。?の記述は不要です。POSTメソッドの場合も同様に追加パラメータを指定します。 | ||||||
Method | 省略可。MsoExtraInfoMethod列挙型の定数で、引数ExtraInfoの接続方法を指定します。
|
||||||
HeaderInfo | 省略可。接続に使用するユーザー名やパスワードなどのHTTP要求ヘッダ情報を文字列で指定します。省略時は空文字列になります。 |
単純なハイパーリンクの実行のサンプルコード
アクティブシートにある全てのハイパーリンクを実行するサンプルです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
Sub HyperlinkFollowTest() On Error Resume Next Dim h As Hyperlink Dim sht As Worksheet Set sht = ActiveSheet '// シートの全ハイパーリンクをループ For Each h In sht.Hyperlinks '// ハイパーリンクを実行 Call h.Follow Next End Sub |
ExtraInfoを使ったGetメソッドURLのサンプルコード
Yahooで「VBA 入門」と検索する場合のハイパーリンクの実行のサンプルです。
通常のURLであれば「https://search.yahoo.co.jp/search?p=vba+入門」への接続になります。
先にA1セルにYahoo検索のURLのハイパーリンクを設定します。
そのあとで、URLに?でGETパラメータを渡すため、引数ExtraInfoにそのパラメータを設定し、引数MethodでGETメソッドであることを示す「msoMethodGet」を設定してハイパーリンクを実行します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Sub HyperlinkFollowGetTest() On Error GoTo ERR_HANDLER Dim oHyperLink As Hyperlink '// A1セルにハイパーリンクを設定 Set oHyperLink = ActiveSheet.Range("A1").Hyperlinks.Add( _ Anchor:=Range("A1"), _ Address:="https://search.yahoo.co.jp/search", _ SubAddress:="", _ ScreenTip:="https://search.yahoo.co.jp/search", _ TextToDisplay:="https://search.yahoo.co.jp/search") '// A1セルのハイパーリンクを実行 Call Range("A1").Hyperlinks(1).Follow(ExtraInfo:="p=vba+入門", Method:=msoMethodGet) ERR_HANDLER: Debug.Print Err.Number & " : " & Err.Description End Sub |
実行結果
このようにブラウザで表示されます。