たま氏の覚え書き

KNIME・AccessVBA・Swift等、学習したことを覚え書き

VBS_バッチファイルでVBSの実行&引数渡し【Wscript.Arguments()】

バッチファイルでVBSを実行する際、値も一緒に渡す
外部から受け取った値をVBS内で使いたいときに使用

今回の例についての説明

▼イメージ▼

VBSの実行と同時に、VBS内の処理に使用する値をバッチファイルからVBSに渡す
今回は.batから複数の値を受け取り、受け取った値をメッセージボックスに表示する


バッチファイルの記述

▼記述例▼

cscript "C:\Users\user\Desktop\ken_all\bat\1_Using_Arguments.vbs" "明日の天気は" "晴れ"

-----解説-----
1. cscriptコマンドの後に、実行したいvbsファイルのディレクトリを記述
2. 渡したい引数を、スペースを入れて続きに記載する

・cscriptとは、スクリプトファイルを実行するコマンド
・今回は使わないがcscriptコマンドのオプションは以下
▼参考サイト▼
cscript - Windowsコマンド虎の巻

VBSの記述

▼記述例▼

Dim ValueA
DIm ValueB

ValueA = Wscript.Arguments(0)
ValueB = Wscript.Arguments(1)

Msgbox ValueA + ValueB

-----解説-----
1. 引数用の変数を宣言、今回は引数が2つあるので2つの変数を宣言 -> 行1,2
2. 各変数に、Wscript.Argumentsプロパティで受け取った引数を代入 -> 行4,5
3. メッセージボックスで表示 -> 行7

・Wscript.Arguments.Countで引数の数を確認できるので頭の隅に入れておく
▼参考サイト▼
引数を受け取る方法[VBScript] : バヤシタ

バッチファイルでVBSを実行

▼結果例▼