プロが教える店舗&オフィスのセキュリティ対策術

あるフォルダ以下のファイル名を出力ファイル、f.name.txtに書き出すのですが
"新しいフォルダ"というフォルダのなかにあるファイルは書き出さないようにしたいのですが、意に反してフォルダー内の全てのファイル名を書き出してしまいます。どこがおかしいのでしょう?
**********************************************
Set FSO = CreateObject("Scripting.FileSystemObject")
Set fl = WScript.CreateObject("Scripting.FileSystemObject")
Set abc = fl.CreateTextFile("f.name.txt")
ShowSubfolders FSO.GetFolder(".")
Sub ShowSubFolders(Folder)
For Each File in Folder.Files 'Folder内のファイルを列挙する
Fname = File.name
FolderCheck=Folder & "\" & "新しいフォルダ"
If Folder <> FolderCheck Then
abc.Write Folder & "\" & Fname & vbCrLf
End If
Next
For Each Subfolder in Folder.SubFolders 'Foler内のフォルダを列挙する
ShowSubFolders Subfolder '再帰呼び出し
Next
End Sub
abc.Close

A 回答 (1件)

Sub ShowSubFolders(Folder)


'*** ここでフォルダ名が「新しいフォルダ」なら処理をスキップする
If Folder.Name <> "新しいフォルダ" Then
  For Each File in Folder.Files 'Folder内のファイルを列挙する
    abc.WriteLine File.Path
  Next
End If
以下略
    • good
    • 0
この回答へのお礼

有難うございました!正常に動きました。

お礼日時:2008/07/03 11:10

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