WSH の Javascript から Excel の Dialog を利用する
WSH の Javscript では MsgBox や InputBox、FileOpenDialog などが用意されていないため、他の Application 環境を経由して間接的にそれらで提供された Dialog を利用する必要がある。
MsgBox や InputBox は VBScript で手続きを記述してから .wsf で同じスクリプトファイルに保存し、呼び出せば良い。
FileOpenDialog は Excel のものを参照して使う。
// Excel Handle // var oApp = new ActiveXObject("Excel.Application"); var pathXls; var oXls; // FileSystem Handle // var oFS = new ActiveXObject("Scripting.FileSystemObject"); // Using FileOpenDialog // do{ pathXls = oApp.GetOpenFilename("ワークシート (*.xls),*.xls"); if(!pathXls){ WScript.Ouit(1); }; } while( !oFS.FileExists(pathXls) ); var oWb = oApp.Workbooks.Open(pathXls); WScript.Echo( "B7:" + oWb.worksheets.item(1).cells(7,2).value);