
メールの宛先にグループ化された宛先を使用したかったので、
Dim oRecipient As Recipient
Set oRecipient = objMAIL.Recipients.Add("宛先のグループ名")
を使用したデバッグ・テストです。後半の自分語りで恥をかく・・・温かく視聴してください。
youtu.be
https://youtu.be/lv_u8xcA0eY
目次
00:00 0.やりたいこと
00:50 結果を先に 1.受信者Recipientで解決Resolveする?
01:49 2.CCにセットだとできない?詳細解説
05:44 グループの展開?Membersデバッグでハマる・・
10:07 自分語りで失敗 4.F1でヘルプを見てみる
下記、知恵袋の質問をキッカケにして、自分語りを行って恥をかいた動画でした。
0.やりたいこと
>ccにグループを入力する構文を
>教えていただけないでしょうか。
1.受信者Recipientで解決Resolveする?単に名前解決?
先に結果から書く(※動画の視聴時間、ブログの滞在時間を引っ張るには、最後にした方がいいんだけど)
'Outlook VBA メールの宛先がグループの時 受信者Recipientで解決Resolveする?単に名前解決? Sub test_20230115() Dim objMAIL As Outlook.MailItem Set objMAIL = CreateItem(olMailItem) objMAIL.Display objMAIL.Subject = "テスト " & Now() objMAIL.To = "a@a ; b@b" 'イメージは宛先・送信者なんだけど受信者のオブジェクトをいじる Dim oRecipient As Recipient Set oRecipient = objMAIL.Recipients.Add("開発チーム") oRecipient.Type = olCC 'CCの欄にしたいので oRecipient.Resolve '解決?んっ?単に名前解決と一緒? Stop '↑とめて確認してみる End Sub
2.いつもの.CCにセットだとできない?
Sub test_20230115_002いつものccだとNGをテスト() Dim objMAIL As Outlook.MailItem Set objMAIL = CreateItem(olMailItem) objMAIL.Display objMAIL.Subject = "テスト " & Now() objMAIL.To = "test2 ; test3" '←メアドの方はうまくいく不思議? objMAIL.CC = "開発チーム" 'グループはダメ? 'いつもの.ccに文字列セットだと、うまくいかない↑ Stop '↑とめて確認してみる End Sub
3.もしかして、やりたいのは?グループの展開?
別の質問
detail.chiebukuro.yahoo.co.jp
をみると、
>宛先に連絡先グループのメンバーを展開して
>メールアドレスを入力する構文を教えていただけないでしょうか。

ウォッチ式で探っただけ、ぉぃぉぃ、コードを書いてよ・・・
- : Members : : AddressEntries/AddressEntries : Module1.test_20230115
グループのメンバー数
? oRecipient.AddressEntry.Members.Count
4
↑その下
? oRecipient.AddressEntry.Members(1).address
↑ループなどで取得してください
4.F1でヘルプを見てみる And 翻訳してみる
ネットでコードを見かけて、私がやること。
と
隙あれば自分語りで、時間を稼ぐ
おいおい、やめとけって・・・
4.1 F1をとにかく押す
As の型宣言や プロパティ、メソッドでF1を押し、ヘルプを見る
4.2 英単語がわからないのでサイトで翻訳してみる
↑わたしだけかな・・・
解決のヒントとなれば幸いです。
'グループの名前が無い時、チェックする? Sub test_20230115_TEST3() Dim objMAIL As Outlook.MailItem Set objMAIL = CreateItem(olMailItem) objMAIL.Display objMAIL.Subject = "テスト " & Now() objMAIL.To = "a@a ; b@b" 'イメージは宛先・送信者なんだけど受信者のオブジェクトをいじる Dim oRecipient As Recipient Set oRecipient = objMAIL.Recipients.Add("開発") oRecipient.Type = olCC 'CCの欄にしたいので Dim bRET As Boolean bRET = oRecipient.Resolve If bRET = False Then MsgBox "グループが見つかりません" End If Stop '↑とめて確認してみる End Sub