VBAでハイパーリンクを実行する

Hyperlink.Followメソッド

既に設定されているハイパーリンクを実行するにはHyperlink.Followメソッドを使用します。

ハイパーリンクをクリックすると文字色が紫色になりますが、Hyperlink.Followメソッドを使った場合はハイパーリンクの文字色は変わりません。

リンク先が存在しない場合やインターネットに接続されていない場合は実行時エラーになるため、エラー処理は必須になります。

ハイパーリンクのセルなどは不要で直接URLを開くWorkbook.FollowHyperlinkメソッドについては「VBAでWEBページをハイパーリンク無しで開く」をご参照ください。

構文

Object Hyperlinkオブジェクトの親オブジェクトにはWorksheetオブジェクトまたはRangeオブジェクトを指定します。
NewWindow 省略可。リンク先を新しいウインドウで表示する場合はTrue、そうでない場合や省略した場合はFalseを指定します。
AddHistory 省略可。使用されません。
ExtraInfo 省略可。GETメソッドやPOSTメソッドの情報を指定します。GETメソッドの場合はURLの?に続く追加パラメータを指定します。?の記述は不要です。POSTメソッドの場合も同様に追加パラメータを指定します。
Method 省略可。MsoExtraInfoMethod列挙型の定数で、引数ExtraInfoの接続方法を指定します。

定数 内容
msoMethodGet ExtraInfoの内容はアドレスに追加される文字列とする。(GETメソッド)
msoMethodpost ExtraInfoの内容は文字列またはバイト配列として保存する。(POSTメソッド)
HeaderInfo 省略可。接続に使用するユーザー名やパスワードなどのHTTP要求ヘッダ情報を文字列で指定します。省略時は空文字列になります。

単純なハイパーリンクの実行のサンプルコード

アクティブシートにある全てのハイパーリンクを実行するサンプルです。

ExtraInfoを使ったGetメソッドURLのサンプルコード

Yahooで「VBA 入門」と検索する場合のハイパーリンクの実行のサンプルです。

通常のURLであれば「https://search.yahoo.co.jp/search?p=vba+入門」への接続になります。

先にA1セルにYahoo検索のURLのハイパーリンクを設定します。

そのあとで、URLに?でGETパラメータを渡すため、引数ExtraInfoにそのパラメータを設定し、引数MethodでGETメソッドであることを示す「msoMethodGet」を設定してハイパーリンクを実行します。

実行結果

このようにブラウザで表示されます。

関連記事

サブコンテンツ

このページの先頭へ