みなVBSで難しく考えているようですがbatで十分でしょう。
[1日の時先月フォルダ作るよー.bat]
echo off
rem もしも1日ならば処理をするそうでない場合終了する
if %date:~-2,2%==01 goto mkdirsystem
exit
:mkdirsystem
rem 現在の年を確定(和暦)。西暦にしたい場合は「set y=%date:~-10,4%」とする。
set /a y=%date:~-10,4%-1988
rem 現在の月を確定
set m=%date:~-5,2%
rem もしも1月だったら112、そうでない場合月の頭に1をつけ1引く(8進数対策)
if %m%==01 (set m=112) else (set /a m=1%m%-1)
rem 先月を確定する(末尾2桁のみを取得する)
set m=%m:~-2%
rem 去年を確定する(もしも12月だったら年を1引く)
if %m%==12 set /a y=%y%-1
rem 指定のディレクトリにフォルダを作る
mkdir \C\test01\%y%%m%
mkdir \C\test02\%y%%m%
exit
とすればよいです。
スケジュールで月ごとに実行するよう登録するのがいいと思いますが
仮に間一日実行としても最初のチェックで1日時しか作成しません。
どうしてもVBSが良いなら
[1日の時先月フォルダ作るよー.vbs]
if split(date,"/")(2)=01 then
Set fso = CreateObject("Scripting.FileSystemObject")
fso.CreateFolder ("\C\test01\" & split(date-1,"/")(0)-1988 & split(date-1,"/")(1))
fso.CreateFolder ("\C\test02\" & split(date-1,"/")(0)-1988 & split(date-1,"/")(1))
end if
私ならこんな感じに組むかな?VBSはdate型が有るのでまぁ楽チンちゃ楽チンですけどオブジェクト定義とかVBSしらない人に説明するのがめんどうなので・・・。
あと西暦にしたい場合は-1988を消しせばOKです。
どっちも動作確認したので動くと思います。
あと仮パスなのでどうでもいいことですけど\C\ではなくc:\とかでテストください。そのままでは実行できません。
追加条件・補足等がほしければ言ってください。
お礼
遅くなり申し訳ありませんでした。 貴殿と他の方のアドバイスにより何とかできそうです。 ありがとうございました