プロが教える店舗&オフィスのセキュリティ対策術

Excelで表をコピーできる状態にする
OutlookのメールにExcelの表を右クリックで「元の書式を保持(K)」で貼り付けてメール送信ということをExcelのマクロボタンでできないでしょうか。

マクロ初心者なためメールを送るというコードは書いたことがありません。
Excelのマクロボタン1クリックでメールまで送れたらいいなと思い質問しました。

A 回答 (2件)

こんにちは


>マクロ初心者なためメールを送るというコードは書いたことがありません

メール作成までの サンプルです
表の範囲は Set rngTable = Range("A1:D6") でしていますので
別法や範囲指定を行って下さい

コメントアウトしているコードは表の挿入位置や指定日時(以降)に送る方法の例です

実際に使うには色々と指定する部分がありますので調べて理解する必要があると思います・・

Sub SendExcelTableToOutlook()
Dim olApp As Object
Dim olMail As Object
Dim rngTable As Range
' Excelの表を選択してコピーする
Set rngTable = Range("A1:D6")
rngTable.Copy
' Outlookの新しいメールを作成する
Set olApp = CreateObject("Outlook.Application")
Set olMail = olApp.CreateItem(0)
' メールの本文に貼り付ける
With olMail
.To = "xxx1@xxx.com"
.CC = "CCメールアドレス"
.BCC = "BCCメールアドレス"
.Subject = "件名"
.Body = "本文"
.Display
'   表の挿入位置 本文の上下?
' .GetInspector.WordEditor.Application.Selection.Start = Len(.HTMLBody)
.GetInspector.WordEditor.Application.Selection.Paste
' オプションの配信タイミングの設定
' .DeferredDeliveryTime = CDate("2023/04/10 17:00")

End With
Application.CutCopyMode = False
End Sub
    • good
    • 0

こんにちは



>メールを送るというコードは書いたことがありません。
検索してみる気さえあれば、いろいろ見つかりますよ。

以下は一例。
https://www.sejuku.net/blog/74389
https://excel-vba.work/2021/08/31/%E3%80%90vba%E …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!