※本ページにはプロモーション(広告)が含まれています
2026年最新版 ・ 新Outlook(Outlook for Windows New)・従来Outlook・Outlook on the Web・Microsoft 365全プラン対応 ・ Power Automate / PowerShell / ルールベース ・ 個人用Microsoftアカウント/法人テナント両対応 ・ Exchange Online最新仕様で動作確認済み
Outlookの「自動応答(Out of Office)」は便利な機能ですが、「毎週金曜日だけ自動でONにしたい」「毎月25日〜末日だけ不在通知を出したい」「祝日リストに合わせて自動切り替えしたい」といった定期スケジュール化には標準UIだけでは対応できません。標準の自動応答は「開始日時〜終了日時」の単発設定しかできず、再帰的(リカーリング)な設定が用意されていないからです。
そのため毎週、毎月、あるいは年間カレンダーに合わせて自動応答を切り替えたい場合は、ルールベース自動応答・Power Automate(旧Microsoft Flow)・PowerShellのSet-MailboxAutoReplyConfigurationといった代替手段の組み合わせが必要になります。本記事では、新Outlook(Outlook for Windows New)・従来Outlook・Outlook on the Web・モバイル版すべてで使える8パターンの自動化手段を、初心者でも迷わない順番で完全解説します。

この記事でわかること
- Outlookの自動応答(Out of Office)が標準では定期スケジュール化できない理由と仕組み
- 毎週金曜だけ・毎月特定期間だけ自動応答をONにする8パターンの手段
- ルールベース自動応答(Inbox Rules)で擬似的に定期化する具体的な設定手順
- Power Automateの「Recurrenceトリガー」と「Set automatic replies」アクションを使った王道の自動化レシピ
- PowerShellの
Set-MailboxAutoReplyConfigurationコマンドレットで法人テナントを一括設定する方法 - 新Outlook(Outlook for Windows New)と従来Outlookでの違い・注意点
- 祝日カレンダー連動・特定送信者だけ除外・社内/社外文面分けなどの応用設定
- うまく動かないときの原因切り分けとよくあるトラブルへの対処法
そもそもOutlookの自動応答(Out of Office)はどう動いている?
「定期スケジュール化」を実装するには、まずOutlookの自動応答がどこに保存されてどう動いているかを理解しておくことが近道です。誤解されがちですが、自動応答はOutlookアプリ側ではなくExchange Online(サーバー側)で動作する機能です。PCの電源を切っていてもメールが届いた瞬間にサーバーが代わりに返信を送ってくれるのはそのためです。
自動応答が保存される3つのレイヤー
自動応答の設定は、内部的には次の3つのレイヤーに保存されています。どの手段で操作してもこの3層に書き込みが行きます。
- Mailbox AutoReply Configuration — 不在期間・社内文面・社外文面・スケジュール開始/終了日時を保持するメインの設定領域。PowerShellの
Set-MailboxAutoReplyConfigurationはここを直接書き換える。 - Inbox Rules — 受信トレイのルール。「条件にマッチしたら定型文を返信する」という挙動を実装でき、ルールベース自動応答の正体はこれ。
- OOF Templates(OFTファイル/HTML) — 文面のテンプレート。複数の文面を保持しておき、Power Automateなどから差し替えられる。
標準UIで定期化できない理由
OutlookのGUIから設定できる自動応答は、内部的に「StartTime/EndTime(開始/終了日時)」の単発フィールドしか持っていない仕様です。週次/月次といった再帰的なスケジュール定義のフィールドが存在しないため、UIだけで「毎週金曜の9時から18時」のようなパターンを保存することはできません。これを補うのが、これから紹介する外側からON/OFFを切り替える自動化手段です。
「自動応答」と「ルールによる返信」の違い
混同されやすいですが、Outlookには「不在時自動応答」と「ルールによる自動返信」という似て非なる2つの機能があります。違いを理解しておくと、適切な手段を選びやすくなります。
- 不在時自動応答: 同一送信者には1日1回しか返信しない(重複防止)。サーバー側で動く。
- ルールによる返信: マッチしたすべてのメールに返信する(重複防止なし)。受信トレイのルールで動く。
定期スケジュール化の場面では、「重複防止が必要な顧客向け不在通知」と「即時応答が必要な問い合わせ自動返信」では選ぶべき手段が変わることを覚えておいてください。
定期スケジュール化の8パターン手段を一覧で把握する
Outlookの自動応答を定期的にONにする手段は大きく分けて8パターンあります。使いたい頻度・運用環境・スキルレベルに応じて最適なものを選んでください。各手段は本記事の後半で個別に詳細手順を解説します。
| パターン | 難易度 | 向いている用途 | 必要な権限 |
|---|---|---|---|
| 1. ルールベース自動応答(Inbox Rules) | 易 | 特定送信者への自動返信を常時稼働 | 本人のみ |
| 2. Power Automate + Recurrence | 中 | 毎週/毎月の自動応答ON/OFF | 本人のみ |
| 3. PowerShell Set-MailboxAutoReplyConfiguration | 中〜難 | 複数ユーザー一括/管理者運用 | 管理者ロール |
| 4. タスクスケジューラ + PowerShell | 中 | 社内PCで毎週決まった時間に切替 | 本人 または 管理者 |
| 5. Outlookアドイン(FlowGear等) | 易 | GUIで設定したい個人ユーザー | 本人のみ |
| 6. Microsoft Graph API スクリプト | 難 | アプリ連携で自社システムから制御 | アプリ登録権限 |
| 7. 共有メールボックス + 全員ON | 易 | 部署単位の窓口メールの常時応答 | 管理者ロール |
| 8. カレンダー連動アドイン(Boomerang等) | 易 | 予定表のカテゴリで自動切替 | 本人のみ |
結論を先取りすると、個人で「毎週金曜だけ」など簡単な定期化をしたいならパターン2のPower Automateが、管理者として複数ユーザーを一括管理したいならパターン3のPowerShellが王道です。それ以外は補助的に組み合わせることになります。
パターン1: ルールベース自動応答(Inbox Rules)で擬似定期化する
最も手軽なのは、Outlookの「ルール」機能を使って自動応答「相当」の挙動を作る方法です。厳密には自動応答ではなく「ルールによるテンプレート返信」ですが、365日24時間稼働させられるため、特定の送信者や件名にマッチしたメールに自動で返信し続けることができます。
手順1: テンプレート文面を作成
- Outlookで新規メールを作成し、自動返信したい文面を本文に記述する。
- 件名に「自動応答: 不在通知」など固定の件名を入力する。
- [ファイル] → [名前を付けて保存] → ファイルの種類で「Outlookテンプレート(*.oft)」を選択して保存する。
- 保存場所は既定の
%APPDATA%\Microsoft\Templates\のままにしておくと、ルール作成時に選びやすくなる。
手順2: ルールを作成
- Outlookで[ファイル] → [仕分けルールと通知の管理] → [新しい仕分けルール]を開く。
- [新しいルールを最初から作成する]を選び、[受信メッセージにルールを適用する]を選択。
- 条件として「特定の人から受信したメッセージ」「件名に特定の文字を含む」など、定期返信したい対象を絞る。
- 処理として「特定のテンプレートを使って返信する」を選択し、手順1で作成したOFTファイルを指定する。
- 「常にこのルールを有効にする」にチェックを入れて完了。
手順3: 定期スケジュール化のコツ
ルール自体には「毎週金曜の9時から」のような条件設定はできません。そこで以下の工夫で擬似的に定期化します。
- 件名による絞り込み: 「【金曜のみ対応】」など特定の件名を顧客に使ってもらい、ルール条件を「件名にこの文字列を含む」にすると、365日返信が動いていても呼び出されるのは特定パターンだけになる。
- カレンダーフォルダの活用: PowerShellやPower Automateと組み合わせて、ルールの「有効/無効」を時間帯で切り替える。
- 転送ルールとの併用: 「金曜だけ別フォルダに振り分けて、そのフォルダ宛にテンプレート返信」というワンクッションで対応する。
このパターンの最大の弱点は「同一送信者にも毎回返信が飛んでしまう」こと。重複防止が必要な場合は次のパターン2(Power Automate)を選んでください。
パターン2: Power AutomateのRecurrenceで毎週/毎月自動切替
Power Automate(旧Microsoft Flow)は、Microsoft 365に含まれる無料の自動化ツールです。「Recurrence(繰り返し)トリガー」と「Set up automatic replies(自動応答を設定する)アクション」を組み合わせれば、ノーコードで毎週金曜の朝9時に自動応答をON、月曜の朝8時にOFF、といったスケジュールが作れます。個人ユーザーでも管理者権限なしで設定できるのが大きな利点です。
事前準備
- Microsoft 365のライセンス(個人/Business/Enterpriseいずれか)に紐づくアカウントでサインインできること。
- Power Automateポータル(
make.powerautomate.com)へのアクセス権限。 - OutlookアカウントがExchange Online(Microsoft 365メールボックス)であること。Gmailやプロバイダメールでは動作しません。
手順1: ONフロー(自動応答を有効化するフロー)を作成
- Power Automateポータルにサインインし、[作成] → [スケジュール済みクラウドフロー]をクリック。
- フロー名: 「毎週金曜 自動応答ON」など。
- 開始時刻: 自動応答をONにしたい時刻(例: 金曜9:00)。
- 繰り返し間隔: 1週間、曜日: 金曜日。
- [作成]をクリックすると、Recurrenceトリガーだけのフローが生成される。
手順2: 自動応答アクションを追加
- [+ 新しいステップ]をクリック。
- 「Office 365 Outlook」コネクタを検索して選択。
- アクション一覧から「Set up automatic replies (V2)」を選ぶ。
- パラメータ:
- Automatic Reply Status:
alwaysEnabled(常時有効) - Internal Reply Message: 社内向け文面
- External Reply Message: 社外向け文面
- External Audience:
allまたはcontactsOnly
- Automatic Reply Status:
- [保存]をクリック。
手順3: OFFフロー(自動応答を解除するフロー)を作成
- 同じ要領で、もう1つ「毎週月曜 自動応答OFF」フローを作成。
- Recurrenceトリガーは月曜8:00など。
- 「Set up automatic replies (V2)」アクションのAutomatic Reply Statusを
disabledに設定。 - 外部/内部メッセージは空欄でOK。
手順4: 動作確認
- フロー一覧画面で各フローを開き、右上の[テスト]をクリックして「手動」を選び、即座に実行できる。
- 実行後、Outlookの[ファイル] → [自動応答]を開き、ON/OFFが切り替わっているか確認。
- 失敗時は[実行履歴]からエラー内容を確認。最も多いのは「コネクタの認証切れ」なので、コネクタの再ログインで解決する。
応用: 毎月特定日だけONにする
「毎月25日〜末日だけ不在通知を出したい」という場合は、Recurrenceを「日次」にして、フローの先頭に「Get current time」+「Compose: dayOfMonth(本日の日)」+「Condition」を挟み、25日以上ならON、それ以外ならOFFという分岐を作ります。Compose式の例:
dayOfMonth(utcNow())
この値が25以上なら「Set up automatic replies (V2)」をalwaysEnabledで実行、そうでなければdisabledを実行する分岐にすれば、月跨ぎの自動切替が完成します。
パターン3: PowerShell Set-MailboxAutoReplyConfigurationで一括設定
管理者ロール(Exchange管理者や全体管理者)を持っている場合、PowerShellのSet-MailboxAutoReplyConfigurationコマンドレットを使うと複数ユーザーの自動応答を一括で設定できます。タスクスケジューラと組み合わせれば、毎週決まった時間に自動応答をON/OFFする運用も可能です。
事前準備
- Windows PowerShell(管理者として実行)を起動。
- Exchange Online管理用モジュールをインストール:
Install-Module -Name ExchangeOnlineManagement -Scope CurrentUser
その後、Exchange Onlineに接続します。
Connect-ExchangeOnline -UserPrincipalName admin@example.onmicrosoft.com
基本構文
単一ユーザーの自動応答を有効化する基本コマンド:
Set-MailboxAutoReplyConfiguration -Identity "user@example.com" `
-AutoReplyState Scheduled `
-StartTime "2026/06/01 09:00:00" `
-EndTime "2026/06/03 18:00:00" `
-InternalMessage "社内向け: 不在中です" `
-ExternalMessage "社外向け: Out of Office"
無効化する場合:
Set-MailboxAutoReplyConfiguration -Identity "user@example.com" -AutoReplyState Disabled
複数ユーザーに一括適用
部署全員に同じ自動応答を設定したい場合は、CSVファイルから読み込んで一括処理します。
Import-Csv .\users.csv | ForEach-Object {
Set-MailboxAutoReplyConfiguration -Identity $_.Email `
-AutoReplyState Enabled `
-InternalMessage $_.InternalMessage `
-ExternalMessage $_.ExternalMessage
}
users.csvのフォーマット例:
Email,InternalMessage,ExternalMessage
tanaka@example.com,本日不在です,Out of office today
suzuki@example.com,GW休暇中です,On vacation
定期実行のためのタスクスケジューラ連携
毎週金曜の9時に自動応答をONにするタスクをWindowsタスクスケジューラで作成します。
- 「タスクスケジューラ」を起動 → [基本タスクの作成]。
- 名前: 「Outlook自動応答ON 金曜」。
- トリガー: [毎週] → 金曜日 → 9:00。
- 操作: [プログラムの開始] → プログラム/スクリプトに
powershell.exe、引数に-File "C:\Scripts\OOF-ON.ps1"を指定。 - OOF-ON.ps1の中身には
Connect-ExchangeOnlineとSet-MailboxAutoReplyConfigurationを記述。
OFF用のタスクも同じ要領で月曜8:00に作成すれば、完全自動の運用が完成します。パスワードレス認証(証明書認証)を使うと、対話なしで実行できるため、サーバー運用にも向いています。
パターン4〜8の概要と使い分け
パターン4: タスクスケジューラ + PowerShell
パターン3と組み合わせてローカルPC上で実行する形。Microsoft 365のフロー数制限がある環境(無償ライセンス等)で代替として使えます。PC起動条件を満たす必要があるのが弱点。
パターン5: Outlookアドイン
「FlowGear OOO Scheduler」「Easy Out of Office」などのアドインをOutlookに追加すれば、GUIで「毎週金曜」「毎月25日」などの定期設定が可能になります。有料のものが多い点と、アドイン自体のサポート終了リスクを考慮しましょう。
パターン6: Microsoft Graph API
自社のWebアプリやSlackボットなどから自動応答を制御したい場合に使う本格派。PATCH /users/{id}/mailboxSettingsエンドポイントでautomaticRepliesSettingを更新します。Azure ADにアプリ登録が必要でハードルは高めですが、最も柔軟性があります。
パターン7: 共有メールボックス + 全員ON
部署窓口のinfo@などの共有メールボックスに自動応答を常時ONで設定し、「常に対応中」を演出する用途。営業時間中だけONにする運用はPower AutomateやPowerShellと組み合わせます。
パターン8: カレンダー連動アドイン
BoomerangやSaneBoxのようなサードパーティアドインを使うと、Outlook予定表に登録した「Out of Office」カテゴリの予定が始まると自動で不在通知ON、終了でOFFという挙動が可能。予定表ベースで管理したい人向け。
主要手段の比較表(2026年版)
| 項目 | ルールベース | Power Automate | PowerShell | Graph API |
|---|---|---|---|---|
| 難易度 | 易 | 中 | 中〜難 | 難 |
| 必要権限 | 本人のみ | 本人のみ | 管理者 | アプリ登録 |
| 定期化 | 擬似的 | 完全対応 | タスク連携で対応 | 完全対応 |
| 複数ユーザー | 不可 | 本人のみ | 一括対応可能 | 一括対応可能 |
| 重複返信防止 | なし | あり | あり | あり |
| コスト | 無料 | M365含む | 無料 | M365含む |
| 推奨ユーザー | 特定送信者対応 | 個人の週次/月次 | 情シス管理者 | 開発チーム |
新Outlook(Outlook for Windows New)対応の注意点
2026年現在、Microsoftは従来のOutlook(Win32版)から新しい「新Outlook for Windows」(コードネームMonarch、ProjectMonarch)への移行を強く推進しています。新Outlookは見た目が大きく変わっているため、自動応答の設定場所も含めて操作ポイントが従来と異なります。

自動応答の設定場所
新Outlookでは、自動応答の設定画面は次の手順でアクセスします。
- 新Outlookを起動。
- 右上の歯車アイコン(設定)をクリック。
- [アカウント] → [自動応答]を選択。
- 従来のような[ファイル]タブからのアクセスは廃止されているので注意。
ルール機能の制限
新Outlookではルール(Inbox Rules)機能が一部簡略化されており、「特定のテンプレートを使って返信する」アクションは新Outlookではまだ未対応です(2026年時点)。そのため、新Outlookでパターン1(ルールベース自動応答)を使いたい場合は、Outlook on the Web(outlook.office.com)からルールを作成してください。サーバー側で動くため、新Outlookでも問題なく稼働します。
Power Automateとの互換性
Power Automateのフローは新Outlookでもそのまま動作します。サーバーサイドで動作するため、クライアントの種類は関係ないからです。これがパターン2が最も将来性のある推奨手段である理由でもあります。
従来Outlookの将来
Microsoftは従来Outlook(Win32版)を当面サポート継続すると発表していますが、新機能の追加は新Outlookに集約されつつあります。自動応答の定期化を新規構築するなら、新Outlook+Power Automateの組み合わせを推奨します。
応用テクニック: もっと細かい制御をしたい場合
1. 祝日カレンダー連動
Power Automateのフローで「内閣府の祝日CSV」または「Office 365の祝日カレンダー」をParseして、祝日には自動応答ONにする設定が可能です。祝日と週末の組み合わせ判定もConditionアクションで実現できます。
2. 特定送信者だけ除外
「重要顧客には自動応答を送らない」という運用は、Power Automateフローの「Get emails (V3)」+「Filter array」アクションで送信者ドメインを除外することで実現できます。不在中でも上司や重要顧客には人間が応答するといった運用に有効。
3. 社内/社外文面の動的切替
PowerShellのInternalMessageとExternalMessageパラメータは別々に指定できるため、社内向けは日本語、社外向けは英語、といった分け方が可能です。外資系・グローバル企業の英語自動応答でよく使われる手法です。
4. メール本文への動的変数挿入
Power Automateの「Compose」アクションで動的式を使えば、「あと◯日で復帰します」のようなカウントダウン文章を毎日自動更新することも可能です。
div(sub(ticks('2026-06-30T00:00:00Z'),ticks(utcNow())),864000000000)
このような式で「終了日までの残日数」を計算して文面に挿入できます。
うまく動かないときの原因切り分け
| 症状 | 考えられる原因 | 対処法 |
|---|---|---|
| Power Automateで自動応答ONが反映されない | コネクタの認証切れ | Outlookコネクタを削除→再作成 |
| PowerShellでConnect-ExchangeOnlineがエラー | 古いモジュールがインストールされている | 最新版に再インストール |
| 同じ送信者に何度も自動応答が飛ぶ | ルールベースを使っている | パターン2/3に切り替え |
| 設定したのに自動応答が送られない | 外部送信者向けが無効 | ExternalAudienceをallに設定 |
| 迷惑メールフォルダ判定でルールが動かない | 迷惑メール扱いで受信トレイにそもそも入っていない | セーフリストに追加 |
| 新Outlookで自動応答メニューが見つからない | UI変更 | 歯車→アカウント→自動応答 |
| PowerShell実行ポリシーでブロックされる | RestrictedPolicy | Set-ExecutionPolicy RemoteSigned |
| タスクスケジューラから実行すると認証エラー | 対話的認証を要求している | 証明書認証に切り替え |
🛒 関連商品をAmazonでチェック
FAQ
Q1. 個人用Microsoftアカウント(outlook.com)でも定期スケジュール化できますか?
個人用アカウントでもPower Automateの「個人プラン」と「outlook.comコネクタ」を組み合わせれば一部の自動応答制御は可能です。ただし、「Set up automatic replies」アクションが個人版コネクタには存在しないため、ルールベース(パターン1)が現実的な選択になります。本格的な定期スケジュール化は法人(Microsoft 365)推奨です。
Q2. 毎月25日〜末日だけ自動応答をONにしたいです。最も簡単な方法は?
Power Automateで「日次トリガー(毎日朝8時)」+「Condition: dayOfMonth(utcNow()) >= 25」+「Set up automatic replies (V2)」の3ステップフローを作るのが最短です。25日以上ならON、24日以下ならOFFの分岐にするだけで、月末をまたぐ自動応答が完全自動化できます。
Q3. 自動応答中でも特定の顧客にだけ通常返信したいのですが?
標準の自動応答ではこの制御はできません。Power Automateで「受信メール→送信者ドメイン判定→特定ドメインなら自動応答スキップ」というカスタムフローを作ることで実現できます。実装はやや高度ですが、VIP顧客対応に有効です。
Q4. 自動応答の文面を曜日ごとに変えたいです。
Power Automateの「Switch」アクションでdayOfWeek(utcNow())を判定し、月〜金で異なる文面を送るフローを作れます。または、PowerShellスクリプトを曜日別に分けてタスクスケジューラで実行する方法でも実現可能です。
Q5. ルールベース自動応答で何度も同じ人に返信が飛んでしまいます。
これはルール機能の仕様で、Outlookの自動応答機能のような「1日1回返信」の制御は持っていません。改善するには、Power Automate(パターン2)に切り替えるか、ルールに「未読のみ」「フォルダ移動済みは除外」などの条件を組み合わせる必要があります。
Q6. Power Automateの無償プランで定期スケジュール化はできますか?
Microsoft 365の有償ライセンスに含まれるPower Automateの権限で、Outlookコネクタの自動応答アクションは利用できます。完全無償のPower Automate Freeプランの場合は「Office 365 Outlook」コネクタが使えないため、定期スケジュール化は実質困難です。
Q7. PowerShellのSet-MailboxAutoReplyConfigurationでEndTimeを過ぎても自動応答が解除されません。
AutoReplyStateをScheduledにした場合のみEndTimeで自動解除されます。Enabledにしてしまうと「常時ON」になりEndTimeは無視されます。スケジュール運用なら必ずScheduledを指定してください。
Q8. 在宅勤務日(週2日)だけ自動応答を送りたいです。
Power Automateで「Recurrenceトリガー:火曜と金曜の朝9時」と「Recurrenceトリガー:火曜と金曜の夕方18時」の2つのフローを作り、それぞれON/OFFを切り替えれば実現できます。曜日ごとに細かく定義したい場合はPowerShellで「DayOfWeekを取得→条件分岐」というスクリプトも便利です。
Q9. 祝日も自動でON切替したいです。祝日リストはどこから取得できますか?
Outlook自体に祝日カレンダーを追加(ファイル→オプション→予定表→休日の追加)した上で、Power Automateの「Get events (V4)」アクションで祝日予定を判定する方法が最も簡単です。または、内閣府の祝日CSV(https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv)をParseする方法もあります。
Q10. テストで自動応答メールが正しく届くか確認したいです。
別のメールアドレス(個人のGmailなど)から自分宛にメールを送り、自動応答メールを受信するかチェックするのが最も確実です。Outlook内蔵の「テストメール送信」では送信元/送信先が同一になり自動応答がトリガーされないため、必ず外部アドレスから送ってください。
まとめ
Outlookの自動応答は、標準UIだけでは「単発の不在期間」しか設定できませんが、ルールベース・Power Automate・PowerShellを組み合わせれば、毎週金曜・毎月25日〜末日・在宅勤務曜日のみ・祝日連動など、あらゆる定期スケジュール化が実現できます。
個人ユーザーが「毎週金曜だけ自動応答ON」のような簡単な定期化をしたいなら、Power AutomateのRecurrenceトリガー+Set up automatic replies (V2)アクションの組み合わせが最も簡単で確実、かつ無料(Microsoft 365に含まれる)です。フロー1つあたり30分もあれば構築できます。
管理者として複数ユーザーを一括管理したい場合は、PowerShellのSet-MailboxAutoReplyConfigurationとタスクスケジューラの組み合わせが王道。CSVファイルから読み込んで部署全員に同じ設定を投げ込めば、大規模運用も簡単です。
新Outlook(Outlook for Windows New)への移行が進む2026年、自動応答の定期化を新規に構築するならサーバーサイドで動作するPower AutomateまたはPowerShellベースが将来性の面でも最適解。本記事で紹介した8パターンを参考に、ぜひ自分の運用に合った定期スケジュール化を実現してください。
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!