当サイトの記事にはプロモーションが含まれています。

Outlook VBAで特定のアカウントからメールを送信する方法

パソコンパソコン・スマホ教室
スポンサーリンク

皆さん、こんにちは。今日は、OutlookのVBAを使って、特定のメールアカウントからメールを送信する方法についてお話しします。複数のメールアカウントをお持ちの方にとって、特定のアカウントを選んでメールを送信するのは少し複雑に感じるかもしれません。でも、ご安心ください。今回は、その方法を初心者の方にもわかりやすく解説していきます。

スポンサーリンク

Outlook VBAでメールを送信する基本

Outlookのイメージ

Outlookのイメージ

まず、OutlookのVBAを使ってメールを送信する基本的な方法を確認しましょう。以下の手順で行います。

  1. Outlookアプリケーションを起動します。
  2. 新しいメールアイテムを作成します。
  3. 件名、本文、宛先などのプロパティを設定します。
  4. メールを送信します。

具体的なコードは以下のようになります。

vba
Sub SendEmail()
Dim OutApp As Outlook.Application
Dim OutMail As Outlook.MailItem

' Outlookアプリケーションを起動
Set OutApp = New Outlook.Application
' 新しいメールアイテムを作成
Set OutMail = OutApp.CreateItem(olMailItem)

With OutMail
.To = "recipient@example.com"
.Subject = "テストメール"
.Body = "これはテストメールです。"
.Send ' メールを送信
End With

' オブジェクトの解放
Set OutMail = Nothing
Set OutApp = Nothing
End Sub

このコードでは、デフォルトのメールアカウントからメールが送信されます。

SendUsingAccountプロパティを使って送信アカウントを指定する

複数のメールアカウントを使用している場合、特定のアカウントからメールを送信したいことがあります。その際に役立つのが、`SendUsingAccount`プロパティです。これを使用すると、メールの送信に使用するアカウントを指定できます。

以下の手順で行います。

  1. Outlookアプリケーション内のアカウントを取得します。
  2. 使用したいアカウントを選択します。
  3. `SendUsingAccount`プロパティに選択したアカウントを設定します。
  4. メールを送信します。

具体的なコードは以下のようになります。

vba
Sub SendEmailFromSpecificAccount()
Dim OutApp As Outlook.Application
Dim OutMail As Outlook.MailItem
Dim oAccount As Outlook.Account
Dim AccountName As String

' 使用したいアカウントの名前を設定
AccountName = "youraccount@example.com"

' Outlookアプリケーションを起動
Set OutApp = New Outlook.Application
' 新しいメールアイテムを作成
Set OutMail = OutApp.CreateItem(olMailItem)

' 指定したアカウントを検索
For Each oAccount In OutApp.Session.Accounts
If oAccount.SmtpAddress = AccountName Then
' メールのプロパティを設定
With OutMail
.To = "recipient@example.com"
.Subject = "特定のアカウントからの送信"
.Body = "このメールは特定のアカウントから送信されています。"
' 送信に使用するアカウントを設定
Set .SendUsingAccount = oAccount
.Send ' メールを送信
End With
Exit For
End If
Next

' オブジェクトの解放
Set OutMail = Nothing
Set OutApp = Nothing
End Sub

このコードでは、指定したメールアカウントからメールが送信されます。

このサイトをチップで応援

SendUsingAccountプロパティを使用する際の注意点

`SendUsingAccount`プロパティを使用する際には、以下の点に注意が必要です。

  • 指定したアカウントがOutlookに正しく設定されていることを確認する必要があります。
  • アカウントのSMTPアドレスを正確に指定する必要があります。
  • アカウントが存在しない場合、`SendUsingAccount`プロパティは`Nothing`を返します。

これらの点を確認することで、エラーを防ぐことができます。

よくある質問や疑問

Q1: 複数のアカウントがある場合、どのように特定のアカウントを選択すれば良いですか?

A1: `OutApp.Session.Accounts`コレクションをループして、各アカウントの`SmtpAddress`プロパティを確認することで、特定のアカウントを選択できます。

Q2: `SendUsingAccount`プロパティが機能しない場合、どうすれば良いですか?

A2: まず、指定したアカウントがOutlookに正しく設定されていることを確認してください。また、アカウントのSMTPアドレスが正確であることを確認し、コード内で正しく参照されているかを確認してください。

まとめ

OutlookのVBAを使用して特定のアカウントからメールを送信する方法について解説しました。`SendUsingAccount`プロパティを活用することで、複数のアカウントを持つユーザーでも柔軟にメールを送信できます。ぜひ試してみてください。もし他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。

この記事を書いた人
この記事を書いた人

企業の情報システム部門で10年以上、PC・アカウント・社内ネットワーク・Microsoft 365/Google Workspace運用を担当。年間数百件の問い合わせ対応(PC不調、メール送受信、Excel/Word資料、Teams会議、スマホ連携など)を通じて、初心者がつまずくポイントを「再現→原因切り分け→最短解決」の手順に落とし込んできました

現場や身近で実際に起きたトラブルをベースに、手順だけでなく「なぜそうなるか」「失敗しやすい落とし穴」「安全な設定(セキュリティ)」まで含めて解説します。

相談窓口(問い合わせ/LINE等)を設け、記事で解決しないケースも個別にサポートしていますので「パソコンが急に動かなくなった」「スマホの設定がわからない」などの悩みは一人で抱え込まず、お気軽にご相談ください。

【お問い合わせは下記URLから】
https://m32006400n.xsrv.jp/inquiry-form/

【公式LINEは下記URLから】
https://lin.ee/t8TDjcj

uri uriをフォローする
スポンサーリンク
よかったらシェアしてね! /
uri uriをフォローする

コメント

タイトルとURLをコピーしました