vbaを使用しメールを送信しようとしております。
以下に記載のように設定をしておりますが、2点設定の方法がわかりかねております。
大変お手数ですが、ご教示いただければ幸いです。
(1)宛先を複数設定したい場合はどのように設定すればよろしいでしょうか。
別々に送るのではなく、宛先にアドレス1、アドレス2を設定し1通のメールで送信をしたいです。
(2)添付ファイルを複数添付したいのですが、宛先によって添付ファイルの数が異なります。
たとえば、宛先Aには添付ファイルが1,2があるが、Bには添付ファイル1のみであり添付ファイル2フィール付度はNULLです。
この場合、エラーになってしまうのですが、"添付ファイルフィールドがnullでも無視してそのまま送信する"と設定はできるのでしょうか。
---------------------------------------
テーブル名:テーブル1
フィールド:アドレス1、アドレス2、件名、本文、添付ファイル1、添付ファイル2
---------------------------------------
Sub SAMPLE_0216()
Dim db As DAO.Database
Dim R1 As Recordset
Dim AP As Object
Dim ML As Object
Dim L1 As String
Set db = CurrentDb
Set R1 = db.OpenRecordset("テーブル1")
Set AP = CreateObject("Outlook.Application")
R1.MoveFirst
Do Until R1.EOF
'メールを作成
Set ML = AP.createitem(0)
'アドレスをセット
ML.To = R1!アドレス1
'件名をセット
ML.Subject = R1!件名
'本文をセット
ML.Body = R1!本文
'ファイルを添付1
L1 = R1!添付ファイル1
ML.Attachments.Add L1
'ファイルを添付2
L1 = R1!添付ファイル2
ML.Attachments.Add L1
'メールを送信
ML.Send
R1.MoveNext
Loop
End Sub
-----------------------------------------
どうぞよろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
Accessはわからないのですが、ExcelからのOutlookの操作と基本は同じはずなので一部推定を交えて答えさせていただきます。
まず宛先ですが、";"(セミコロン)で区切れば複数設定できます。
Access VBA の書き方ですが、
ML.To = R1!アドレス1 & ";" & R1!アドレス2
でよさそうに思えるのですがいかがでしょうか。
宛先が1つの場合でも、アドレス1かアドレス2のうち宛先の入っていない方が空文字列(長さ0の文字列)であればこのままで大丈夫なはずです。
次に添付ファイルですが、Nullを無視してそのまま送信可能かどうかはわからないのですが、Nullなら添付しないようにすれば話は簡単だと思います。
Access VBA の書き方ですが、たぶん以下のようなものでいいと思います。
'ファイルを添付1
IF IsNull(R1!添付ファイル1) = False Then
L1 = R1!添付ファイル1
ML.Attachments.Add L1
End If
'ファイルを添付2
IF IsNull(R1!添付ファイル2) = False Then
L1 = R1!添付ファイル2
ML.Attachments.Add L1
End If
(フィールドがNullかどうかの判定は参考URLのページをまねてみたのですがこれでいいでしょうか?)
http://oshiete.goo.ne.jp/qa/1223220.html
参考URL:http://oshiete.goo.ne.jp/qa/1223220.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) outlook マクロが終了しません。 1 2022/09/02 11:14
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) セルの値からファイルを複数作りたい2 3 2022/10/07 15:54
- その他(メールソフト・メールサービス) このメールは何ですか 8 2023/06/15 17:31
- その他(教育・科学・学問) 新卒です。 1つ応募したい企業があって履歴書などを提出するのですが、「下記3点のフォーマットをダウン 3 2023/02/26 14:23
- Visual Basic(VBA) VBAにてメール作成した際、一部指定箇所のみ赤文字にしたいです。 下記の内容ですと作成されたメール本 1 2022/04/27 13:31
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
MS ACCESSを利用して複数へのメール送信
Access(アクセス)
-
VBAでメール作成(選択した複数の宛先へのメール作成) ExcelのVBAを使用してOutlookの
Excel(エクセル)
-
ACCESSで自動でメールをおくる時に任意のアドレスに送りたい
Access(アクセス)
-
-
4
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
5
Access VBAでメール自動送信
Access(アクセス)
-
6
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
7
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
8
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
9
Accessでメール一括送信ソフトを作りたい
その他(プログラミング・Web制作)
-
10
ACCESSから、メール送信を行いたいです
Access(アクセス)
-
11
アウトルックが起動しているかどうかを取得するには?
Visual Basic(VBA)
-
12
VBAでメール作成(選択した複数の宛先へのメール作成) ExcelのVBAを使用してOutlookの
Excel(エクセル)
-
13
アクセスで入力したデータの順番が変わってしまいます
その他(ビジネス・キャリア)
-
14
アクセスのテキストボックスの初期値を空白に
Access(アクセス)
-
15
ACCESSで開いているユーザーの特定方法
Access(アクセス)
-
16
Accessのレポート上のテキストボックス値を設定したい
その他(データベース)
-
17
Accessでテーブルの値をテキストボックスに代入するには?
Access(アクセス)
-
18
ACCESSでの改行コード
その他(データベース)
-
19
VBA プロシージャの名前の取得
その他(Microsoft Office)
-
20
個別に違う添付ファイルを付けて一括でメール配信をしたいのですが、EXC
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
自分のアドレスが入ってないメ...
-
Excel VBA Outlookメール作成について
-
OUTLOOK 一度に複数にメールす...
-
宛先アドレスの後ろに「;」が...
-
Excel表のメールアドレスリスト...
-
Microsoft Outlookで複数相手...
-
一斉送信メール、相手に他の宛...
-
SPAMメールについて
-
失礼な文とは分からず、先生に...
-
文末にAll the best! 返信しな...
-
windowsメールとOutlookメール...
-
Winmail.dat ファイルが開けない
-
"***@***.ocn.ne.jp"の"@***"は...
-
株式会社NSCと言う所から、現金...
-
内容の書かれていない迷惑メー...
-
送信しても『Mail System Error...
-
一つのメールアドレスで色んな...
-
既婚者の異性とメールするのは...
-
土日に大学教授にメールを送る...
-
匿名でメールを送りたい。Gmail...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
宛先アドレスの後ろに「;」が...
-
アクセスVBAでメールを送信(複...
-
Thunderbird 宛先アドレスの重...
-
メールの宛先が、自動で追加さ...
-
一斉送信メール、相手に他の宛...
-
Outlookの『全員に返信』で追加...
-
携帯電話解約すると、メール受...
-
Excel表のメールアドレスリスト...
-
e-Mailでbccとfccの違いを教え...
-
OUTLOOK 一度に複数にメールす...
-
[CC][BCC]の読み方と意味に...
-
1度に大勢の人へメールを送る...
-
同内容のメールを複数のひとに...
-
メールのCCとBCCはなんですか?...
-
PC から完全にデータを消す方法
-
Eメール(gooのフリーメール)...
-
Microsoft Outlookで複数相手...
-
急いでいます 教えてください!...
-
Outlook Express 送信時のアド...
-
相手のyahooアドレスドメインが...
おすすめ情報