• ベストアンサー

フォルダ内にあるファイルのファイル名を全て取得したいのですが

毎回お世話になっております<(_ _)>初歩的なことだと思うのですが、あるフォルダの中にあるファイルのファイル名を全て取得したいのですが、どのようにすれば出来るでしょうか?ファイル内を全て読み込みしか知りませんで(>_<)教えて下さい、お願いします<(_ _)>

質問者が選んだベストアンサー

  • ベストアンサー
  • skink
  • ベストアンサー率38% (7/18)
回答No.3

変数の宣言で、 dim strFile as string dim Filepath as string dim FileNames() as string dim Filenum as long としてください。 取得したファイル名は、FileNames(0)、FileNames(1)、FileNames(2)・・・と格納されます。 それでもダメなら。 dim FileNames(500) as string として、「ReDim Preserve PartsFile(FileNum)」を削除してみてください。

satoshi777
質問者

お礼

おはようございます。先にFileNum=1という風に記述してやったら、うまくいきました。一個目がインデックスの有効範囲ではありませんってなったので、FileNumが0だからかなぁっと思って1にしてみました(>_<)結果、うまくいきました(~_~)ありがとうございます<(_ _)>ファイル名もOPEN~と同じかと思ってたんですが、違うんですねぇ(>_<)難しいです(>_<)またよろしくお願いします<(_ _)>

その他の回答 (3)

  • gu-tarou
  • ベストアンサー率42% (6/14)
回答No.4

以前 このgooで厭な思いをしたのですが、また書込んじゃった。 FileListBoxを使います。  File1.Path = フォルダPath:  File1.Pattern = "*.*" :  n = File1.ListCount フォルダー内のファイル数は n として求まり、 ファイル名は File1.List(i) で求まります。 n個に対し i は 0 ~ n-1 に対応します。 よって For i = 1 To n  FileName=File1.List(i - 1) Next i これで求ます。 例として、system32内のファイル数は 私の場合 2,139個 でした。 Private Sub Command1_Click() Path = "C:\WINDOWS\system32" File1.Path = Path File1.Pattern = "*.*": n = File1.ListCount For i = 1 To n FileName = File1.List(i - 1) Next i End Sub

satoshi777
質問者

お礼

おはようございます!今、試してみました!こんな方法もあるんだなぁと大変勉強になりました、ありがとうございます<(_ _)>嫌な思いですかぁ、しかし、僕としてはgu-tarouさんのような方が一人でも多く、困ってる方に助言していただければと思います(>_<)勝手な思いですが(>_<)また、よろしくお願いします<(_ _)>

  • skink
  • ベストアンサー率38% (7/18)
回答No.2

こんにちは。 こんな感じでいかがでしょうか。 FilePath にフォルダを指定。 strFile = Dir$(FilePath & "*.*") 'strFile が空になるまで繰り返し Do While strFile <> "" ReDim Preserve PartsFile(FileNum) 'ファイル名を配列に格納 FileNames(FileNum) = strFile FileNum = FileNum + 1 strFile = Dir$ '次のファイル名を読込 Loop

satoshi777
質問者

補足

さっそく試してみました。ReDim Preserveのところで配列がありませんとなります。ヘルプにはOption Baseが1となっていたので、そうしましたが、変化はありませんでした。ファイル名を配列に格納という意味がいまいちよくいわかりません。配列に格納とはファイルに書き出しとは全く違いますか? すいません、調べても調べてもよく理解できません(>_<)

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

VB6で良いでしょうか? FileSystemObjectを利用する方法が詳しく説明されています。 よく利用させてもらってます。ぜひブックマークを。

参考URL:
http://www.officetanaka.net/excel/vba/filesystemobject/folder.htm#Files
satoshi777
質問者

お礼

ありがとうございます<(_ _)>このようなサイトがあるんですねぇ。ブックマークしました!僕の場合、もっと基礎を学んでからじゃないと使えない感じで、悲しいですけど(>_<)

関連するQ&A

専門家に質問してみよう