
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(アクセス)
-
Accessでメール一括送信ソフトを作りたい
その他(プログラミング・Web制作)
-
Access VBAでメール自動送信
Access(アクセス)
-
-
4
VBAでメール作成(選択した複数の宛先へのメール作成) ExcelのVBAを使用してOutlookの
Excel(エクセル)
-
5
AccessからExcelにエクスポートする時に常に上書きしたい
Excel(エクセル)
-
6
accessでクエリをExcelにエクスポートする時にファイル名に日付を追加したい
Access(アクセス)
-
7
ACCESSで自動でメールをおくる時に任意のアドレスに送りたい
Access(アクセス)
-
8
ACCESSから、メール送信を行いたいです
Access(アクセス)
-
9
アクセスVBAのMe!と[ ]
Access(アクセス)
-
10
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
11
Access2010 メール送信が出来ない
PowerPoint(パワーポイント)
-
12
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
13
Access サブフォームでの選択行の取得
その他(データベース)
-
14
EXCELマクロで複数のEMAIL宛先を指定
Visual Basic(VBA)
-
15
Access→Excelへエクスポートすると日付の表示形式が変化する
Excel(エクセル)
-
16
アクセス・テーブルの改行についてです。
Access(アクセス)
-
17
クエリで出来た表にチェックボックスを追加する
その他(Microsoft Office)
-
18
Returnに対するGoSubがありません
Access(アクセス)
-
19
AccessからExcelに罫線付で出力したい
Excel(エクセル)
-
20
サブフォームに対してGoToRecordするには?
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
宛先アドレスの後ろに「;」が...
-
Thunderbird 宛先アドレスの重...
-
Outlookの『全員に返信』で追加...
-
Excel表のメールアドレスリスト...
-
e-Mailでbccとfccの違いを教え...
-
届いたメールの宛先が覚えのな...
-
アクセスVBAでメールを送信(複...
-
一斉送信メール、相手に他の宛...
-
OUTLOOK 一度に複数にメールす...
-
受信メールの添付ファイル忘れ...
-
一度聞いたかも知れないのをっ...
-
メール送信すると以下のような...
-
送信エラーの際、CCには届い...
-
メールの一斉送信で非対象者に...
-
お祝い金を徴収するメールの書き方
-
相手にメールを送信したら、 Ea...
-
メールを送ると下のようなメー...
-
送信しても『Mail System Error...
-
空メールって何も書かなくてい...
-
メールの書き方 保護者から先生へ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
宛先アドレスの後ろに「;」が...
-
Thunderbird 宛先アドレスの重...
-
メールの宛先が、自動で追加さ...
-
Excel表のメールアドレスリスト...
-
アクセスVBAでメールを送信(複...
-
一斉送信メール、相手に他の宛...
-
OUTLOOK 一度に複数にメールす...
-
e-Mailでbccとfccの違いを教え...
-
Outlookの『全員に返信』で追加...
-
1度に大勢の人へメールを送る...
-
[CC][BCC]の読み方と意味に...
-
複数の相手に同じ内容を送信す...
-
VBAで、OutlookEXのメール作成
-
受信メールBCCのはずなのに携帯...
-
届いたメールの宛先が覚えのな...
-
複数の相手に一斉送信する
-
同内容のメールを複数のひとに...
-
メールの宛先欄の順番
-
ezmlmの設定について
-
相手のyahooアドレスドメインが...
おすすめ情報