こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

回答受付中の質問

VBAでエクセルの文をメールに転記

当方エクセル2016使用しています。
エクセルのVBAで、outlookのメールを自動作成したいです。
エクセルの
E2に宛先
E3に件名
E4~E6に本文が入っており、
下記VBAでoutlookに各データが入る様にはできました。
しかしエクセルでは文字のサイズや色が異なっているものが、
outlook本文に反映されません。
(1行単位だったり、文字単位だったりでサイズや色が異なる)
エクセルに表示されているそのままを
outlook本文に表示させるにはどうしたら良いでしょうか。
********************************
Sub Macro1()

Dim toaddress As String
Dim subject As String
Dim mailbody As String

Dim outlookObj As outlook.Application
Dim mailItemObj As outlook.mailItem

toaddress = Range("E2").Value
subject = Range("E3").Value

mailbody = Range("E4").Value
mailbody = mailbody & vbCrLf & Range("E5").Value
mailbody = mailbody & vbCrLf & Range("E6").Value

Set outlookObj = CreateObject("Outlook.Application")
Set mailItemObj = outlookObj.CreateItem(olMailItem)
mailItemObj.BodyFormat = olFormatHTML
mailItemObj.To = toaddress
mailItemObj.subject = subject
mailItemObj.body = mailbody

mailItemObj.display

Set outlookObj = Nothing
Set mailItemObj = Nothing

End Sub

投稿日時 - 2020-03-24 21:26:59

QNo.9727189

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

自身で本文をHTML化にするか
ExcelシートをHTMLに変換する方法
https://office-kaiketsu.com/%E3%81%9D%E3%81%AE%E4%BB%96/excel%E3%82%B7%E3%83%BC%E3%83%88%E3%82%92html%E3%81%AB%E5%A4%89%E6%8F%9B%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/
このサイトで紹介されている方法で本文用のシートを作成しHTMLファイルを出力してHTMLの必要な卯分を本文用のセルに貼り付けてメール作成マクロを作成するかになるのではないかと思います。

投稿日時 - 2020-03-25 08:34:19

あなたにオススメの質問