← コード一覧へ戻る
実務ハイパーリンク

ハイパーリンクのリンク先にメールアドレスを指定する

宛先入りメール作成画面を開くリンクをA1に作ります。

実行前に確認

  • A1の値・数式を表示文字で上書きします。メールの例は作成画面を開くだけで送信はしません。
  • メールアプリの関連付けが必要です。件名の空白は%20で表しています。

1サンプルコード

Sub Example1129()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Worksheets("Sheet1")
    If MsgBox("A1の内容とリンクを書き換えます。続けますか?", vbYesNo + vbExclamation) <> vbYes Then Exit Sub
    ws.Hyperlinks.Add Anchor:=ws.Range("A1"), Address:="mailto:someone@example.com", _
        SubAddress:="", ScreenTip:="", TextToDisplay:="リンクを開く"
End Sub

図で見る操作の流れ

イメージ図

概念図:マクロはリンクを作り、メール画面は後で手動で開きます。

  1. 手動:確認

    実行後、A1の上書き確認で[はい]

  2. マクロ:リンク作成

    Sheet1!A1を「リンクを開く」に変更

  3. 手動:リンクを開く

    A1をクリックし、someone@example.com宛てのメール作成画面を開く

[いいえ]なら変更なし。メールアプリの関連付けが必要で、メール送信は行いません。

コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。

使い方・実行手順を確認する4つの手順で、コードの使い方を確認できます
  1. 1

    練習用のブックを.xlsm形式で保存し、Sheet1という名前のシートを用意します。A1をリンク用に空けます。

  2. 2

    Alt+F11でVBEを開き、[挿入]→[標準モジュール]へコードを貼り付けます。

  3. 3

    AddressがURLやメール宛先、SubAddressがブック内の移動先です。TextToDisplayで表示文字を変えます。

  4. 4

    マクロ内にカーソルを置いてF5で実行します。A1にリンクができます。クリックして動作を確認します。

使っている機能の公式ドキュメント(Microsoft Learn)