Excel VBA

【Excel VBA】【マクロ】【Tips】Outlookを起動してメールを作成する方法(参照設定あり)

こんにちは!Lenocoです。本日も見てくださりありがとうございます。

今回はメーラーを立ち上げる方法について学びましょう!

VBAでメーラーを立ち上げる方法

まず、方法が2つあります。

1つ目は参照設定を使う方法です。
参照設定でOutlook操作の設定をすることで、メールの操作をすることができるようになります。
VBEで外部ライブラリへの参照設定でOutlook型を追加します。

「ツール」→「参照設定」→「Microsoft Outlook XX.X Object Library」のライブラリにチェックを入れる(私の時は16.0でした)→「OK」をクリック

2つ目は、CreateObject関数を使用する方法です。
これは参照設定を行う必要がないので、参照設定なしでOutlook操作をしたい場合はこちらを使用してみてください。

また、今回はExcel上に記入した情報を元に、
宛先、タイトル、本文をメールに転記していきましょう。

今回は参照設定ありのコードを見ていきましょう。

コード

Sub Main1() '参照設定あり
    Dim myOL As New Outlook.Application
    Dim myOLMI As Outlook.MailItem
    Dim settingSh As String
    
    settingSh = "メール設定"
    Set myOLMI = myOL.CreateItem(olMailItem)
    
    With myOLMI
        .To = ThisWorkbook.Sheets(settingSh).Range("B1")
        .CC = ThisWorkbook.Sheets(settingSh).Range("B2")
        .BCC = ThisWorkbook.Sheets(settingSh).Range("B3")
        .Subject = ThisWorkbook.Sheets(settingSh).Range("B4")
        .Body = ThisWorkbook.Sheets(settingSh).Range("B5")
        .Attachments.Add "C:\Users\lenoco\Desktop\sample.xlsx"
        .Display
    End With
End Sub

コードの説明

まず、outlook起動用の変数を定義します。
※シート名は「メール設定」としていますが、場合に応じて変更してくださいね。
Mailitemオブジェクトを作ります。
そのオブジェクトを使って、To、CC、件名や本文を設定していきます。
シンプルに文字列を設定していきますが、今回はシート上に文字列を用意しているので
各項目にセル位置を設定していきます。
Attachments.Addに添付したいファイルのパスを設定します。
そして最後にメール画面を表示(Display)します。

さいごに

今回は参照設定ありの、ExcelからOutlookを起動してメールを作成する方法を見ていきました。
次回は参照設定なしバージョンをご紹介します!

Lenoco

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です