バッチファイル(.bat)を使ってWindows 7をスリープモードに移行させる方法です。

バッチファイルの内容

以下のように記述します。
powercfg -h off
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
powercfg -h on
このバッチファイルは管理者権限で実行すると「スリープ」、管理者権限なしで実行すると「休止状態」になります。

参考
Windows7でスリープモード(S3)に移行するバッチファイル - とろテク
バッチファイルで,Windowsの電源をスリープ(スタンバイ)に切り替え - プログラミングとIT技術をコツコツ勉強するブログ

「スリープ」と「休止状態」の違い

「スリープ」は、作業内容をメモリに保存してPCを停止します。「休止状態」は、作業内容をハードディスク(HDD)に移してからPCを停止します。

「スリープ」はメモリの保持に電力を使うので「休止状態」よりも電気代がかかりますが、その代わりに素早く終了、起動できます。「休止状態」はその逆です。ただし終了と起動には大きな電力を使うので、電気代的には停止時間が90分以内なら「スリープ」の方が有効なようです。また、「スリープ」の場合は作業内容がメモリに保存されるので、突然電源が落ちたときデータを失う可能性が高いです。

ちなみに、Windows 7の通常のスリープは「ハイブリッドスリープ」といって、上記の「スリープ」や「休止状態」とは違い、作業内容をメモリとハードディスクの両方に保存してPCを停止するようです。

参考
Windowsの「スタンバイ(スリープ)」と「休止状態」の違いとは?|エンジョイ!マガジン
スリープと休止状態: よく寄せられる質問
シャットダウン vs. スリープ | Windows PC 消費電力検証結果レポート

ファイルを常に管理者権限で実行する方法

①ファイルへのショートカットを作成します。
②ショートカットのプロパティを開きます。
③右下の「詳細設定」をクリックし、詳細プロパティの「管理者として実行」にチェックします。

参考
バッチファイルを常に管理者として実行する方法 - 気になったこと日記

バッチファイルを実行して暫く待ってからスリープする方法

timeoutコマンドを使います。
timeout 60
このように記述すると60秒待たせることができます。待っている間何かキーが押されると、残り時間を無視して次のコマンドに移ります。

参考
Windowsのtimeout/sleepコマンドで実行を一時停止する - @IT