
EXCEL2003を使用しています。
・アクティブブックを保存し、メールに添付
・送信先アドレス、件名を指定
ということをVBAで行ないたいです。
調べてみた所、メール送信に関するVBAの記述としては「SendMailメソッド」を使えばいいらしいのですが、こちらは送信まで行なってしまうようです。
でも今回の場合は自動送信ではなく、上記の通り送信の直前で止めたいのです。
(本文記述と送信ボタン押下は手動)
できればメニューの[ファイル]-[送信]機能ではなく、VBAで処理したいのですが…どうすればいいのでしょうか。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
No.1
- 回答日時:
>調べてみた所、メール送信に関するVBAの記述としては「SendMailメソッド」を使えばいいらしいのですが、こちらは送信まで行なってしまうようです。
そうですね。「送信」以前に「添付」ができないと存じます。
>・アクティブブックを保存し、
>・送信先アドレス、件名を指定
これだけでしたら、いろんな方法があろうかと存じますが、
>今回の場合は自動送信ではなく、上記の通り送信の直前で止めたいのです。
>(本文記述と送信ボタン押下は手動)
ということになりますと、一旦開いたメールメッセージに SendKeys ステートメント で無理矢理添付ファイルを指定するようなことになりましょうか(恐らくできないと存じますが。。。)。
私は全然判りませんが、API か何かで メールメッセージ の ウィンドウ の プロパティ を取得できれば、ファイルを添付することもできるかも知れませんが。。。
>メールに添付
>できればメニューの[ファイル]-[送信]機能ではなく、VBAで処理したい
ということでしたら、「本文記述」は メールメッセージ 内ではなくて、ワークシート 内か テキストボックス ぐらいに書き込むようにして、準備万端整えてから、CDO を利用して送信するみたいなことになるかと存じます。
もしくは、CDO に メールメッセージ を再編集するような メソッド があれば、まさに、お望みの通りなのですが、ちょっとWEB検索してみても、みつかりませんでした。
CDO の使い方につきましては、下記をご覧ください。VBA ではなくて VBS(WSH)の記述ですが、VBA でも応用できますが、OS に依存します。
●Windows標準機能とWSHを使ってメールを送信する
http://www.atmarkit.co.jp/fwin2k/win2ktips/428ws …
Sub CDO使用例()
Dim oMsg As Object
Set oMsg = CreateObject("CDO.Message")
With oMsg
.From = "送信者<hoge@hoge.com>"
.To = "宛先<hoge1@hoge.com>"
.Cc = "CC1<hoge2@hoge.com>,CC2<hoge3@hoge.com>"
.Bcc = "BCC<hoge4@hoge.com>"
.Subject = "件名"
.TextBody = "本文"
.AddAttachment "D:\hoge\hoge.xls"
.Send
End With
End Sub
あるいは、添付ファイルを付けることはできませんが、下記のような方法もあります。
Sub MAILTO()
ActiveWorkbook.FollowHyperlink _
"mailto:宛先1<hoge1@hoge.com>?cc=CC1<hoge2@hoge.com>&cc=CC2<hoge3@hoge.com>&bcc=BCC<hoge4@hoge.com>&subject=件名&body=本文"
End Sub
いずれのマクロも、ワークシートの中にメールアドレスなどを配置しておいて、下記のように内容を指定することもできます。
【CDO使用例】
With oMsg
.From = "送信者<hoge@hoge.com>"
.To = Range("A1").Value & "<" & Range("B1").Value & ">"
.Cc = Range("A2").Value & "<" & Range("B2").Value & ">," _
& Range("A3").Value & "<" & Range("B3").Value & ">"
.Bcc = Range("A4").Value & "<" & Range("B4").Value & ">"
.Subject = Range("A5").Value
.TextBody = Range("B5").Value
.AddAttachment "D:\hoge\hoge.xls"
.Send
End With
【MAILTO】
ActiveWorkbook.FollowHyperlink _
"mailto:" & Range("A1").Value & "<" & Range("B1").Value & ">" & _
"?cc=" & Range("A2").Value & "<" & Range("B2").Value & ">" & _
"&cc=" & Range("A3").Value & "<" & Range("B3").Value & ">" & _
"&bcc=" & Range("A4").Value & "<" & Range("B4").Value & ">" & _
"&subject=" & Range("A5").Value & _
"&body=" & Range("B5").Value
ご回答ありがとうございます。
なかなか難しいようですね。。。
添付がつけられないようでしたら、動作テストが大変そうなVBAは避けて、普通にハイパーリンクで対応してみようと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) アンケート集計用VBAについて教えて下さい。 約100人にアンケート内容が入ったExcelファイルを 1 2022/07/27 13:12
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Visual Basic(VBA) VBAにてメール作成した際、一部指定箇所のみ赤文字にしたいです。 下記の内容ですと作成されたメール本 1 2022/04/27 13:31
- その他(Microsoft Office) VBA メール送信済で実行されるはずが、実行されない時があります。 2 2023/02/02 14:05
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Gmail gmailで独自ドメインアドレスのメールが届かない件 1 2023/08/25 23:24
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Gmail 会社のメルアドから個人のGmailアドレスに送ったら、「このメールにはご注意ください」と警告が出た 2 2022/05/26 15:12
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Inforseekメールの時刻指定送信...
-
エクセルでメール送信
-
初歩的な質問ですみません。
-
メールの送信場所って分かりま...
-
送信エラー:Undeliverable Mai...
-
Mcafeeインストール済み。zipフ...
-
メールのアドレス設定について
-
hotmail,yahooの海外版Webメー...
-
MAILER-DAEMON@*******について
-
OCNメール 一斉送信
-
シュリケンソフトの送信ボック...
-
送信済みボックスに入っている...
-
ドコモp901i アドレス変更の連...
-
時空を超えてメールが来た~?!
-
iCloudのMail dropについてです...
-
受信メールの添付ファイル忘れ...
-
法律問題に関する質問投稿をし...
-
OCNメール フィルター管理
-
失礼な文とは分からず、先生に...
-
報告メールを送る女性の心理
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
メールの送信場所って分かりま...
-
送信エラー:Undeliverable Mai...
-
iCloudのMail dropについてです...
-
OCNメール 一斉送信
-
7zipで圧縮して電子メール送信...
-
ダウンロードが遅くなり、期限...
-
shuriken Pro4
-
mail distributorの 使い方
-
匿名メールの発信源を調べるに...
-
thunderbirdでのメールの差し込み
-
Mac(OS10/G4) 送信したメール...
-
自動応答か普通のメールかをヘ...
-
特定メールサーバーへ送信できない
-
AccessよりOutlook以外でメール...
-
送信済みのメールを再送するには?
-
メールが2週間後に届く
-
時空を超えてメールが来た~?!
-
Thunderbirdでの送信日時について
-
シュリケンソフトの送信ボック...
-
メッセージを送信できません(M...
おすすめ情報