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

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

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

こんにちは!今日は、Outlookで複数のメールアカウントをお持ちの方に向けて、Outlook VBAを使って特定のアカウントからメールを送信する方法をご紹介します。例えば、プライベート用と仕事用のアカウントを使い分けている場合、間違ったアカウントからメールを送ってしまうと困りますよね。そんな時に、この方法が役立ちます。

スポンサーリンク

Outlook VBAとは?

Outlookのイメージ

Outlookのイメージ

まず、Outlook VBAについて簡単に説明します。VBA(Visual Basic for Applications)は、Microsoft Office製品に組み込まれているプログラミング言語で、Outlookの操作を自動化することができます。これにより、日々のメール作成や送信作業を効率化できます。

特定のアカウントからメールを送信する手順

では、具体的な手順を見ていきましょう。

1. 開発者タブの表示

まず、Outlookで開発者タブを表示する必要があります。

  1. Outlookを開き、左上の「ファイル」タブをクリックします。
  2. 「オプション」を選択し、表示されたウィンドウで「リボンのユーザー設定」をクリックします。
  3. 右側のリストから「開発者」にチェックを入れ、「OK」をクリックします。

これで、リボンに「開発者」タブが表示されます。

2. VBAエディターの起動

次に、VBAエディターを起動します。

  1. 「開発者」タブをクリックし、「Visual Basic」を選択します。
  2. VBAエディターが開いたら、左側のプロジェクトエクスプローラーで「ThisOutlookSession」をダブルクリックします。

3. コードの入力

以下のコードを入力してみましょう。このコードは、特定のアカウントからメールを送信するものです。

vb
Sub SendMailFromSpecificAccount()
Dim olApp As Outlook.Application
Dim olMail As Outlook.MailItem
Dim olAccount As Outlook.Account
Dim accountName As String

' Outlookアプリケーションを取得
Set olApp = Application

' 送信に使用するアカウント名を指定
accountName = "your-email@example.com" ' ここを使用したいアカウントのメールアドレスに変更してください

' 新しいメールアイテムを作成
Set olMail = olApp.CreateItem(olMailItem)

' 指定したアカウントを検索して設定
For Each olAccount In olApp.Session.Accounts
If olAccount.SmtpAddress = accountName Then
Set olMail.SendUsingAccount = olAccount
Exit For
End If
Next olAccount

' メールの件名、本文、宛先を設定
olMail.Subject = "テストメール"
olMail.Body = "これはテストメールです。"
olMail.To = "recipient@example.com" ' 送信先のメールアドレスに変更してください

' メールを送信
olMail.Send

' 後片付け
Set olMail = Nothing
Set olApp = Nothing
End Sub

このコードでは、指定したメールアドレス(`accountName`)に一致するアカウントを探し、そのアカウントからメールを送信します。`accountName`には、使用したいアカウントのメールアドレスを入力してください。

4. マクロの実行

コードを入力したら、マクロを実行してみましょう。

  1. VBAエディターの上部メニューから「実行」→「Sub/UserFormの実行」を選択します。
  2. 表示されたダイアログで「SendMailFromSpecificAccount」を選び、「実行」をクリックします。

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

よくある質問や疑問

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

A1: 上記のコードでは、`accountName`に使用したいアカウントのメールアドレスを設定しています。この部分を変更することで、特定のアカウントを選択できます。

Q2: 他のOutlookアイテム(例えば、予定表やタスク)でも同様の方法でアカウントを指定できますか?

A2: はい、可能です。例えば、予定表アイテムを作成する際にも、`SendUsingAccount`プロパティを設定することで、特定のアカウントからの送信を指定できます。

まとめ

いかがでしたか?Outlook VBAを活用することで、特定のアカウントからのメール送信を自動化し、業務効率を向上させることができます。ぜひ試してみてください。

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

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

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

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

コメント

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