|
▼sakurabudoh さん:
こんばんは。
これ、VBAではなくて、VBSの話ですよね?
objexcelとか、objfolderに何がセットされているかわかりませんが、
>call fileinfo(objfolder)
rem たぶん↑が原因ではないと思います
>
>sub fileinfo(objfolder)
>
>for each objfile in objfolder.files
> objexcel.cells(introw, 1).value = objfile.name
rem ↑だと思いますが・・・
> objexcel.cells(introw, 2).value = objfile.datecreated
> objexcel.cells(introw, 3).value = objfile.datelastmodified
> objexcel.cells(introw, 4).value = objfile.path
> introw = introw + 1
>next
>
>for each objsubfolder in objfolder.subfolders
> call fileinfo(objfolder)
>next
>
>end sub
>
>VBSの本に載っていたサンプルプログラムを丸写ししたものです。
もうちょっと、簡単なコードにしましょう
call test(1)
sub test(byval aaa)
msgbox aaa
abc(1,1)
if aaa+1 <= 10 then
aaa=aaa+1
call test(aaa)
end if
end sub
****(これ適当な名前と言う意味です).vbsというファイル名で保存して
これを実行してみて下さい(同じ内容のエラーになります)
abcをプロシジャーだと解釈しているからです。
本当にプロシジャーなら、 call abc(1,1)
と記述しなければならないんですが・・(勿論、abcというプロシジャーがあったとして)。
上のコードのabc(1,1)を削除して再確認してください。
正常に作動するはずです。
上記の例を参考にして頂いて、
>objexcel.cells(introw, 1).value = objfile.name
この辺のコードに問題がないか確認して下さい。
それから、このサイトは、VBAの質問箱ですから、
いきなりコードだけ記述されてしまうとVBAだと思ってしまいます。
(もっとも上記のコードをVBAでどうやって実行するのかわかりませんが)
VBSのご質問もVBAに役に立つ事もあるので、私個人としては、良いと思いますが、
このコードをどういう手順で実行したかとか、
エラーの発生した行とかの情報も記述して下さいね
|
|