🙌
バッチやコマンドのパラメータをフォームで受け付ける
vbsのinputboxでは1つしか値をうけとることができない。複数の場合、
htaを使う
windows標準なのでソフトなどのインストールは不要
test.hta
<html><head>
<title>サンプル・プログラム</title></head>
<body onLoad="readparam()">
<form name="form1">
<p>集計対象 開始時間
<input type="text" size="25" name="text1" value="テキストサンプル" /></p>
<p>集計対象 終了時間
<input type="text" size="25" name="text2" value="テキストサンプル" /></p>
<p><input type="button" value="集計してメールを送信する"
onClick="subGo()" />
</p>
</form>
<script language="VBScript">
'http://marmalade88.blog.fc2.com/blog-entry-3.html
'https://qiita.com/harryyuni/items/8a88227a72fcff949bb7
'https://sites.google.com/site/jfmillet40/home/vbscript/htatosukuriputodedoraibu-jie-xu
Sub readparam()
strFile = "param.txt"
'ファイルシステムオブジェクト作成----------------------------------
Set objFS = CreateObject("Scripting.FileSystemObject")
Set objText = objFS.OpenTextFile(strFile, 1)
' 読み込み
document.form1.text1.value =objText.ReadLine
document.form1.text2.value =objText.ReadLine
' ファイルクローズ
objText.Close
End Sub
Sub subGo()
'1行テキストの値を取得
strKekka = "1行テキストの値は" & document.form1.text1.value & vbcr
strKekka = strKekka & "1行テキストの値は" & document.form1.text2.value & vbcr
msgbox(strKekka)
strFile = "param.txt"
'ファイルシステムオブジェクト作成----------------------------------
Set objFS = CreateObject("Scripting.FileSystemObject")
Set objText = objFS.OpenTextFile(strFile, 2)
' 書き込み
objtext.WriteLine(document.form1.text1.value)
objtext.WriteLine(document.form1.text2.value)
' ファイルクローズ
objText.Close
Window.Close
exit sub
End Sub
</script>
</body>
</html>
2行のtextファイル param.txtを用意しておく(空でよい)
Discussion