EVALで計算
EVALをいまいち理解できずにいるのだけれど、計算式の答えも返してくるという事がわかった。
↓式が記入されたファイルを
123*349
999*(33+23)
222*(44/3)
↓このvbsファイルにD&Dすれば
option explicit on error resume next dim sfo, ofile, wfile dim fpath, str, i set sfo = createobject("scripting.filesystemobject") fpath = wscript.arguments.item(0) set ofile = sfo.opentextfile(fpath) if err.number = 0 then str = split(ofile.readall, vbnewline) set wfile = sfo.opentextfile(fpath, 2) for i = 0 to ubound(str) wfile.write(str(i) & "=" & eval(str(i)) & vbcrlf) next wfile.close msgbox "終了" end if set sfo = nothing set ofile = nothing set wfile = nothing
↓答えが記入されたファイルに変換される。
123*349=42927
999*(33+23)=55944
222*(44/3)=3256
子供の宿題には役立ちそうだ。
代入演算子の場合は"execute"を使うようだ。
a = 1 msgbox a '1と表示 execute "a = 2" msgbox a '2と表示
そういえばUWSCのヘルプにもそれっぽい記述があった。
UWSCの場合、代入演算子の場合は":="にすればいいとある。
理解していたようで、やはり理解していなかったのだが
これで理解出来た気がする。