Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


33378 / 76734 ←次へ | 前へ→

【48577】複数フォルダの全ファイル取得方法
質問  もとあし  - 07/4/23(月) 15:48 -

引用なし
パスワード
   こんにちは。
いつもお世話になっています。
また行き詰っているので、教えてください。

複数の階層に渡って存在する複数のフォルダの各末端にデータファイルがたくさんあります。
FolderA の下に SubFolder1, SF2, SF3,...。
その各SFのしたにSubSubFolderイ, SSFロ, SSFハ...と続き、
その各SSFの下にDetaFileあ, DFい, DFう...と続きます。

フォルダもファイルも会社のサーバー内にあり、ファイルはカテゴリで分けられており、
データファイルが新規に増えれば、フォルダもファイルも新しく増える可能性があります。
その全ファイル名のリストを取得したのですが、その方法が分かりません。

#22734が一番近いような気がしたので、「にらめっこ」したのですが、
何をしているのか、ぼんやりとしか分からない状態です。

下記のコードは、エラーがでます。(安易なもので、すみません。。。)
なぜかは分かっていませんが、Dirを異なる階層で何度もループで使用するのは
Dirの戻り値が変わるから、良くないのかな。。。と思っています。

何か、糸口だけでも教えていただけないでしょうか。
また上記の理由が間違っていましたら、その正しいエラーの出る
理由も併せて教えていただけないでしょうか。

よろしくお願いします。


Sub FSearch()

Dim PartsPath As String
Dim FldName1 As String
Dim FldName2 As String
Dim FilName As String

PartsPath = "K:\AAA\BBBB\"

FldName1 = Dir(PartsPath, vbDirectory)

Do While FldName1 <> ""
  If FldName1 <> "." And FldName1 <> ".." Then
    If (GetAttr(PartsPath & FldName1) And vbDirectory) = vbDirectory Then
      FldName2 = Dir(PartsPath & FldName1 & "\", vbDirectory)
      Do While FldName2 <> ""
        If FldName2 <> "." And FldName2 <> ".." Then
          If (GetAttr(PartsPath & FldName1 & "\" & FldName2) & _
            And vbDirectory) = vbDirectory Then
            FilName = Dir(PartsPath & FldName1 & "*.xls", vbNormal)
            Do While FilName <> ""
              Debug.Print FldName1, FldName2, FilName
              FilName = Dir
            Loop
          End If
        End If
        FldName2 = Dir  →ここでエラー
      Loop
    End If
  End If
  FldName1 = Dir
Loop

End Sub

3 hits

【48577】複数フォルダの全ファイル取得方法 もとあし 07/4/23(月) 15:48 質問
【48579】Re:複数フォルダの全ファイル取得方法 ハチ 07/4/23(月) 17:28 回答
【48595】Re:複数フォルダの全ファイル取得方法 もとあし 07/4/24(火) 11:50 お礼
【48597】Re:複数フォルダの全ファイル取得方法 ハチ 07/4/24(火) 14:00 回答
【48609】Re:複数フォルダの全ファイル取得方法 もとあし 07/4/25(水) 14:24 お礼
【48610】Re:複数フォルダの全ファイル取得方法 ハチ 07/4/25(水) 15:47 発言
【48613】Re:複数フォルダの全ファイル取得方法 もとあし 07/4/25(水) 16:08 お礼
【48581】Re:複数フォルダの全ファイル取得方法 ichinose 07/4/23(月) 18:42 発言
【48596】Re:複数フォルダの全ファイル取得方法 もとあし 07/4/24(火) 12:01 お礼
【48612】Re:複数フォルダの全ファイル取得方法 もとあし 07/4/25(水) 15:53 質問
【48618】Re:複数フォルダの全ファイル取得方法 ichinose 07/4/25(水) 19:52 発言
【48627】Re:複数フォルダの全ファイル取得方法 もとあし 07/4/26(木) 10:31 お礼
【48638】Re:複数フォルダの全ファイル取得方法 ichinose 07/4/26(木) 22:01 発言
【48639】Re:複数フォルダの全ファイル取得方法 追伸 ichinose 07/4/27(金) 7:32 発言
【48642】Re:複数フォルダの全ファイル取得方法 追伸 もとあし 07/4/27(金) 12:02 お礼

33378 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free