毎晩決まった時刻に動くよう登録したタスクが、朝見ると動いていない。
手で実行すれば動く。
この症状でまず疑うのは、その時刻にPCがスリープ(画面を消して眠る省電力の状態)に入っていて、処理を実行できないことです。
スリープ中のPCを時刻どおりに起こせるかどうかは、PCのスリープ方式で決まります。
ネットの解決記事の多くは従来方式(S3)のPCだけを前提に書かれているので、新方式(モダンスタンバイ)のPCでは手順どおりにやっても直りません。
この記事に出てくる用語
- タスクスケジューラ … 決まった時刻に処理を自動で動かす、Windows標準の道具
- スリープ解除タイマー … 「何時に起きる」という予約で、スリープ中のPCを起こす仕組み
- モダンスタンバイ … 近年のノートPCに多い新方式。眠りながらネットにつながったままでいられる
- コマンドプロンプト … 文字で命令を打ってWindowsを操作する画面。この記事では命令を1つ打つだけ
- トリガー … タスクを動かすきっかけの指定。「毎日23時に」のような時刻指定
この記事が扱う症状かを先に確かめる
タスクスケジューラを開きます(検索ボックスに「タスクスケジューラ」と入力)。
左側の「タスク スケジューラ ライブラリ」をクリックし、一覧で自分のタスクの「前回の実行時刻」と「前回の実行結果」の列を見てください。
| 一覧の表示 | 意味とやること |
|---|---|
| 実行時刻は予定どおりだが、結果に (0x1) などのコードが出ている | 起動はしたが処理が失敗した。動かしたい処理の側を確認する |
| 実行時刻が予定の時刻になっていない。その時刻、PCはスリープ中だった | スリープが原因の可能性が高い。この記事を読み進める |
| 実行時刻が更新されていないが、その時刻PCは起きていた | スリープ以外の原因。トリガーと有効/無効を見直す |
夜の間PCをシャットダウン(電源オフ)していると、予約では起こせません。
起こせるのはスリープか休止状態からだけです(Microsoftのpowercfgの資料に明記)。
夜間に自動実行するなら、PCはスリープにしておきます。
結論:起こせるかどうかはPCの方式で決まる
先に結論
- スリープ中のPCはタスクを実行できない。時刻どおり動かすには「時刻に合わせてPCを起こす」設定が要る
- 起こせるかどうかはスリープ方式で決まる。コマンド1つ(管理者権限不要)で確かめられる
- 従来方式(S3)なら設定2か所で直せる見込みが高い。モダンスタンバイは設定では直らないことがあり、その場合は「次に使い始めたとき動かす」か「夜間はスリープさせない」に切り替える
タスクスケジューラには「時刻に合わせてPCを起こす」機能があり、裏でスリープ解除タイマー(起きる時刻の予約)が使われます。
- 従来方式(S3) … 深く眠り、予約の時刻に起きる。タイマーが効く前提の仕組み
- モダンスタンバイ … タスクの予約で起きる保証が無く、「起きない」という報告が多い(詳細は後半の章)
自分のPCがどちらの方式かを3分で確かめる
方式を確かめる手順
- スタートボタン横の検索ボックスに「cmd」と入力し、「コマンド プロンプト」を開く(「管理者として実行」は不要)
- 黒い画面に次の1行を打ち込み、Enterキーを押す
powercfg /a
- 「スタンバイ (S0 低電力アイドル)」で始まる行が、「利用可能です」と「利用できません」のどちら側に表示されているかを見る
powercfg /a は現在の状態を表示するだけで、実行しても設定は何も変わりません。
- 「利用できません」の側にある → 従来方式(S3)です。次の章へ
- 「利用可能です」の側にある → モダンスタンバイです。「モダンスタンバイだった場合」の章へ(間の章は読み飛ばしてかまいません)
機種によっては行の後ろに「ネットワーク接続」などの言葉が付きますが、見るのはどちら側にあるかだけです。
「スタンバイ (S3)」と「S0 低電力アイドル」の両方が「利用できません」側なら、スリープ自体を使えない構成です(一部のデスクトップなど)。
原因はスリープではないので、タスクの登録内容など他を当たってください。
従来方式(S3)だった場合:設定2か所で直せる見込みが高い
タスク側で「起こしてくれ」と頼み、Windows側で「起こしてよい」と許可します。
片方だけでは起きません。
設定1:タスクに「スリープを解除する」を頼む
- タスクスケジューラの一覧で自分のタスクを右クリック →「プロパティ」
- 「条件」タブをクリック
- 「タスクを実行するためにスリープを解除する」にチェックを入れる
- 「OK」で閉じる(パスワードを求められたら、Windowsのサインインのパスワードを入れる)
⚠️ 同じ「条件」タブの「コンピューターをAC電源で使用している場合のみタスクを開始する」は既定でオンです。
オンのままバッテリー駆動で夜を越すと、スリープ解除まで成功しても実行が止まります。
夜間はPCを電源につないでおいてください。
設定2:Windows側で「起こしてよい」を許可する
- 検索ボックスに「電源プランの編集」と入力して開く(見つからなければ、WindowsキーとRを同時に押して
powercfg.cplと入力しEnter →「プラン設定の変更」) - 「詳細な電源設定の変更」をクリック
- 一覧の「スリープ」をダブルクリックし、「スリープ解除タイマーの許可」を開く
- 値を「有効」にして「OK」
Windows 11では、選択肢は「無効」「有効」「重要なスリープ解除タイマーのみ」の3つが並びます。
Microsoftの電源設定の資料は、この3つ目を「内部のシステムタイマーによる解除だけを許可する」値だと定義しています。
自分で登録したタスクの予約が「重要」の扱いになるかどうかは、はっきりしていません。
この値のままでは起きられないことがあるので、「有効」に変えてください。
ノートPCでは、この画面が「バッテリ駆動」「電源に接続」の2欄に分かれています。
夜間はPCを電源につなぎ、少なくとも「電源に接続」側を「有効」にしてください。
「スリープ解除タイマーの許可」の項目自体が無い場合は、メーカーの初期設定や会社の管理で非表示にされています。
表示させるにはレジストリ(Windowsの心臓部の設定簿)の編集が要るため、この記事では扱いません。
自宅のPCならメーカーのサポート情報を機種名で調べ、会社のPCなら情報システム部門に相談してください。
動いたかをテストする(10分)
動作テストの手順
- タスクのプロパティ →「トリガー」タブ →「新規」で、今から5分後に1回だけ動くトリガーを仮に追加する(本番のトリガーは触らずに残す)
- ノートPCなら電源ケーブルをつなぐ
- スタートボタン → 電源 → スリープ
- 触らずに10分待つ(マウスに触れると起きてしまい、テストにならない)
- キーを押してPCを起こし、一覧の「前回の実行時刻」を見る
「前回の実行時刻」が手順1の時刻になっていれば成功です。
確認は起こした直後に行ってください。
10分ほど後に更新された場合は、取りこぼしを実行し直す設定(後述)が働いただけの可能性があります。
⚠️ 画面がついたかどうかで判断しないでください。
予約による解除は、画面がつかないまま裏で動くことがあります。
成否は「前回の実行時刻」で見ます。
テストが終わったら、仮のトリガーを削除します(トリガータブで選んで「削除」)。
それでも起きない場合、まれにBIOS/UEFI(Windowsより下の層の設定)でタイマー復帰が止められている機種があります。
「機種名+スリープ 復帰」でメーカーのサポート情報を調べてください。
起きたのに、処理が途中で止まるとき
予約で起きたPCは、人の操作がないと約2分で再びスリープに入ります(既定値)。
実行中の処理があっても、この再スリープは止まらなかったという報告が多くあります。
- 処理が2分以内に終わる → そのままでよい
- 処理が長い(大量のバックアップなど)→ 途中で眠って止まる可能性がある。後述のモダンスタンバイの章にある「その時間帯はスリープさせない」運用が確実
この時間を延ばす設定は画面に表示されておらず、レジストリの編集が要るため、この記事では扱いません。
モダンスタンバイだった場合:設定では直らないことがある
何が起きているのか
Microsoftの技術資料には、スタンバイ中も「OSが予定した時刻」にPCを起こすタイマーがある、と書かれています。
Windows Updateのような、Windows自身が予定した仕事がこれに当たります。
利用者がタスクスケジューラに登録したタスクを起こせるかどうかは、できるとも、できないとも書かれていません。
一方、利用者からの報告は「起きない」側に偏っています。
「『スリープを解除する』にチェックを入れても起きない」という質問はMicrosoftの公式Q&Aに繰り返し投稿されていますが、解決に至った公式の回答は見当たりません。
まず自分の機体で1回テストする
「起こせない」と明言されているわけではなく、挙動はメーカーごとの作り込みに依存します。
やり方は前の章の「動いたかをテストする(10分)」と同じです。
5分後の仮トリガーを足し、電源につないでスリープさせ、10分後に「前回の実行時刻」を見ます(画面がついたかでは判断しません)。
動いた場合も、1回の成功で夜間運用を決めないでください。
電源につないだまま数日運用し、毎朝「前回の実行時刻」が更新されているのを見届けてから任せるのが確実です。
なお「モダンスタンバイ機でも動いた」という書き込みには、スリープまでの時間を「なし」にして眠らせていなかった例が混じっています。
動かなかったときの現実解
テストで動かなければ、設定を探し回っても解決しない可能性が高いです。
判断基準は1つ。
その処理は夜中のその時刻に動く必要があるのか、朝までに終わっていればよいのか、です。
その1:朝までに終わっていればよい →「次に使い始めたとき動かす」
- タスクのプロパティ →「設定」タブ
- 「スケジュールされた時刻にタスクを開始できなかった場合、すぐにタスクを実行する」にチェック
- 「OK」で閉じる
項目名は「すぐに」ですが、実際には既定で10分ほど待ってから始まります(Microsoftが仕様として明記)。
確認は、朝PCを使い始めて10分以上たってから「前回の実行時刻」を見てください。
⚠️ 「1回限り」のトリガーでは実行し直されません(これも仕様です)。
毎日・毎週のような繰り返しのトリガーで使ってください。
その2:夜中のその時刻に動くことが必要 → その時間帯はスリープさせない
- 設定(スタートボタン → 歯車)→「システム」→「電源とバッテリー」
- 「画面とスリープ」を開く
- 「電源接続時」のスリープを「なし」にする。画面のほうは短いままでよい(画面が消えても処理は続きます)
- ノートPCでふたを閉じたい場合は、コントロール パネル →「ハードウェアとサウンド」→「電源オプション」→「カバーを閉じたときの動作の選択」→ 電源接続時を「何もしない」にする
バッテリー側の設定を変えなければ、電源につないだ夜だけこの状態になります。
やらないほうがよいこと
検索すると、レジストリを書き換えてモダンスタンバイを無効化し、従来方式(S3)に戻す方法が見つかります。
この記事では勧めません。
Microsoftが案内している方法ではなく、近年の機種では従来方式の眠りをハードウェア自体が持っておらず、書き換えた結果スリープが壊れたという報告もあるためです。
会社のPCでは、ここまでの設定が管理で変更できないことがあります(画面が灰色で押せない、など)。
回避方法を探さず、情報システム部門に「夜間にこの処理を自動で動かしたい」と目的から相談してください。
この記事の確認範囲
この記事の画面と項目名は、Windows 11のものです。
Windows 10やエディションの違いで、名前や場所が変わることがあります。
- モダンスタンバイのPCで、タスクの予約による解除が働くかどうかは分かっていません。機種ごとの作り込みで結果が変わります
- ノートPCでは、電源の設定が「バッテリ駆動」「電源に接続」の2欄に分かれます。フタを閉じたときの動作やバッテリー駆動での解除は、機種によって変わることがあります
- 予約で起きたPCが再びスリープに入るまでの時間は、機種や設定によって変わることがあります
- 会社のPCでは、管理者の設定で電源設定の変更が制限されていることがあります


コメント