>私の勤めている会社からメールを送信するとき、自分個人のア
>ドレスからではなく、社員共有のメールボックスから送信する場合は、
>エクセルVBAは、どう書けばいいでしょうか?
こんにちは。
送信アカウントの切り替えですが、
Outlook2007なら SendUsingAccount ってアカウントがあるみたいです。
outlook VBA SendUsingAccount で検索
http://www.google.co.jp/search?hl=ja&q=outlook+VBA+SendUsingAccount&lr=lang_ja&aq=f&oq=
残念ながら2003や2002だと無いみたいです。
(outlook2003のヘルプで探したのですが、出てきませんでした。私の見落としで使えるならいいのですが。。。)
で、通常は紹介したらOutlook2007で確認・テストなんですが、
ゴメンなさい、2007は近所に住んでいる弟に貸したPCに入っているので、今テストすることができません。
※自分のWindows7 に インストールしようと思っているのですが、やって無くて。
あまりお力になれずスミマセン。
少しでも解決のヒントになればいいなぁ・・・と思いつつ、失礼します。
三流プログラマー Ken3
もしかして、簡単な方法があるのかなぁ?みつけたSendUsingAccountを使わなくても・・・
2011/04/24追加 読者より回答を教えてもらいました
読者より回答を教えてもらいました。
.SendUsingAccount = Session.Accounts("アカウント名")
でOKみたいです。
Outlook VBAで送信元を変更する。.SendUsingAccount
http://d.hatena.ne.jp/ken3memo/20110424/1303608810
↑を見てください。
2018/07/21 テストしてみました
#Outlook #VBA 送信アカウント 切り替え SendUsingAccount = Session.Accounts("アカウント名") 試行錯誤 Accounts.Item("アドレス") - YouTube
youtu.be
.SendUsingAccount = Session.Accounts("アカウント名")
ではまった。※はまってます、現在進行形。
下記の質問をいただいたので、試してます。
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
VBAでOutlookのメールを立ち上げることに成功しました。
差出人をデフォルトではなく、
別のアカウントで使いたいのですが、
単純にsendusingaccountを入れるだけではダメなんですね。
どうすればうまくいくんでしょうか。
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
複数メールアドレスを登録して、
テスト中ですが、私もうまくいっていなかったり・・・
'今回のテスト 送信元を変更する?
mITEM.SendUsingAccount = oApp.Session.Accounts.Item("xxxx@ken3.org")
または、
Dim oAccount As Outlook.Account
Set oAccount = oApp.Session.Accounts.Item("xxxxx@ken3.org")
mITEM.SendUsingAccount = oAccount
どちらでもうまくいきました。
あれ、急にうまくいった・・・なぜだろう。。
まぁ、頭からテストしてみます。
VBSだけ、うまくいかない・・・
何か、ケアレスミスがありそうな。。
OutlookのVBA立ち上げて、途中で止めて、
? Session.Accounts.Count
3
でアカウント件数を確認したり、
? Session.Accounts.Item(1)
xxxx@ken3.org
で中身を確認、
Set oAccount = Session.Accounts.Item("xxxx@ken3.org")
mITEM.SendUsingAccount = oAccount
? oAccount.DisplayName
? oAccount.UserName
メールテスト
qa2017 KEN
など、イロイロテストしてみてください。
2022/03/25 追記

SentOnBehalfOfName を意図せずに発見→ https://youtu.be/u4sLe5J2Tms?t=80
ken3memo.hatenablog.com