⚡
SendEmailWithAttachment
自動化Outlookを使って現在のブックを添付ファイルとしてメール送信します
🎬 デモGIF準備中
📖 使い方
- VBAエディタを開く(Alt + F11)
- モジュールを挿入(挿入 > モジュール)
- 下記VBAコードをコピー&ペースト
- ブック上で実行(Alt + F8 でマクロ選択)
💡 実行例: SendEmailWithAttachment を実行し、宛先・件名を入力します(Outlook必須)
💻 VBAコード
' SendEmailWithAttachment
' -----------------
' Macro Name: SendEmailWithAttachment
' Description: Outlookを使って現在のブックを添付ファイルとしてメール送信します
' Parameters: なし
' Returns: なし
' Usage: SendEmailWithAttachment を実行し、宛先・件名を入力します(Outlook必須)
' -----------------
Sub SendEmailWithAttachment()
On Error GoTo ErrorHandler
Dim wb As Workbook
Dim outlookApp As Object
Dim mailItem As Object
Dim toAddress As String
Dim subject As String
Set wb = ActiveWorkbook
If wb.Path = "" Then
MsgBox "先にブックを保存してください", vbExclamation, "注意"
Exit Sub
End If
toAddress = InputBox("宛先メールアドレスを入力してください", "宛先")
If toAddress = "" Then Exit Sub
subject = InputBox("件名を入力してください", "件名", wb.Name & " を送付します")
If subject = "" Then Exit Sub
Set outlookApp = CreateObject("Outlook.Application")
Set mailItem = outlookApp.CreateItem(0)
With mailItem
.To = toAddress
.Subject = subject
.Body = "お世話になっております。" & vbCrLf & "ファイルを添付いたします。"
.Attachments.Add wb.FullName
.Display
End With
MsgBox "メール作成画面を表示しました。内容を確認して送信してください。", vbInformation, "完了"
Exit Sub
ErrorHandler:
MsgBox "エラーが発生しました:" & vbCrLf & Err.Description & vbCrLf & _
"(Outlookがインストールされていない場合は使用できません)", vbCritical, "エラー"
End Sub