「覚え間違い」を教えてください!

VBSで以下のコードを作成しましたが動作しません。

********動作しない**************************
if (objFileSys.FolderExists("200810*")= True) then
 msgbox "yes"
else
 msgbox "no"
end if

********動作する**************************
if (objFileSys.FolderExists("200810")= True) then
 msgbox "yes"
else
 msgbox "no"
end if

部分一致でフォルダが存在するかをしたいのですが、
どうしたらいいのでしょうか。
よろしくお願いします。

A 回答 (2件)

FolderExistsはワイルドカードをサポートしていないので


調べたいフォルダーの親のSubFoldersコレクションを自前で調べる
といったことが必要でしょう

' sParentはFolderオブジェクト、sTargetは調べたい名前
Function myExists( sParent, sTarget )
  dim sf, ss
  set sf = sParent.SubFolders
  for each ss in sf.Name
    if Left( ss, len(sTarget)) = sTarget then
      myExists = True
      Exit Function
    end if
  next
  myEXists = False
End Function
といった具合の関数を使ってはいかがでしょう
    • good
    • 1
この回答へのお礼

回答ありがとうございます。
やってみます。

お礼日時:2009/02/17 18:39

一発では出来ないだろうから



カレントフォルダに含まれるフォルダ全てを取得して
http://msdn.microsoft.com/en-us/library/e1dthkks …
FolderオブジェクトのNameプロパティを
Like演算子なりRegExpオブジェクトなり使って検証していくしかない
    • good
    • 0
この回答へのお礼

回答ありがとございます。
やってみます。

お礼日時:2009/02/17 18:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報