指定した時間だけ処理を待機する
指定した時間だけスクリプトの処理を待機するには、WScriptオブジェクトのSleepメソッドを使います。待機は一時停止の意味で、Sleepメソッドを実行した時点で指定した秒数だけ一時停止し、時間経過後に処理を再開します。

Sleepメソッドの使い方
 Sleepメソッドは、指定した時間だけスクリプトをその場で待機するメソッドです。秒数は1/1000秒(ミリ秒)単位で指定します。例えば、1秒待機したいときは 1000 を指定します。参考までに、コンソールアプリケーションの場合は処理を待機している間も {Ctrl}+{c}キーでスクリプトを強制停止できます。

図 1Sleepメソッドの書式
WScript.Sleep(intTime)
処理を待機します。
intTime(待機時間)
 処理を待機する時間をミリ秒(1/1000秒)単位で指定します。

【記述例 1】
処理を1秒待機します。
WScript.Sleep 1000
Sleepメソッドの使用例
 処理を待機するスクリプトの作成例です。次のスクリプトでは、最初のメッセージを表示した5秒後に、次のメッセージを表示しています。メッセージには、経過秒数が分かるように現在の時刻を表示しています。

リスト 1処理を待機する(VBScript版)
1
2
3
4
5
6
7
8

VBS
Option Explicit

WScript.echo "5秒後に次のメッセージを表示します (" & time & ")"

'指定はミリ秒で、1秒なら1000、5秒だと5000。
WScript.sleep(5000)

WScript.echo "あけましておめでとうございます (" & time & ")"

リスト 2処理を待機する(JScript版)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

JS
WScript.echo("5秒後に次のメッセージを表示します (" + getTime() + ")");

//指定はミリ秒で、1秒なら1000、5秒だと5000。
WScript.sleep(5000)

WScript.echo("あけましておめでとうございます (" + getTime() + ")");

function getTime() {

    //時刻を編集し返す

    var objDate = new Date()

    return objDate.getHours()
         + ":" + objDate.getMinutes()
         + ":" + objDate.getSeconds();

}

◆実行例
 サンプルスクリプトを実行すると、最初のメッセージを表示した5秒後に「あけましておめでとうございます」のメッセージが表示されます。

図 2サンプル スクリプトの実行結果
サンプル スクリプトの実行結果

Copyright(C) 1999-2014 結城圭介(Ver.3.51) All rights reserved