エクセルもしくはAccessでマクロを使って指定したパスの中にあるデータ(ファイル)の名前を一覧にして取得したいのです。
ただ、フォルダが存在する場合その中にあるファイルも取得したいです。もちろん重くなるし、膨大なデータになるのは承知の上です。
ファイルA
L XXX.PNG
YYY.JPG
ZZZ.PDF
・
・
・
ファイルA’
L CCC.PNG
DDD.JPG
・
・
・
これを
XXX.PNG
YYY.JPG
ZZZ.PDF
CCC.PNG
DDD.JPG
・
・
・
みたいな感じにしたいです。(ことばでは表せなさそうなので)
No.3
- 回答日時:
こんにちは
探せばどこかに転がっていそうな内容ですが・・・
※ 最初にアクティブシートをクリアしてから書き出しますので、ご注意。
※ ダイアログからフォルダを選択すると、その中のフォルダ・ファイル一覧が書き出されます。
※ 標準モジュールにコピペの上、FilesListを実行してください
Sub FilesList()
Dim folderPath As String
With Application.FileDialog(msoFileDialogFolderPicker)
.Show
If .SelectedItems.Count = 0 Then Exit Sub
folderPath = .SelectedItems(1)
End With
ActiveSheet.Cells.Clear
Call fList(folderPath, Cells(1, 1))
End Sub
Sub fList(ByVal P As String, ByRef R As Range)
Dim FSO, F, folders, folder, files, file
Set FSO = CreateObject("Scripting.FileSystemObject")
Set F = FSO.GetFolder(P)
R.Value = F.Name
Set R = R.Offset(1, 1)
For Each folder In F.SubFolders
Call fList(folder.Path, R)
Set R = R.Offset(, -1)
Next folder
For Each file In F.files
R.Value = file.Name
Set R = R.Offset(1)
Next file
End Sub
No.2ベストアンサー
- 回答日時:
excel のマクロです。
以下のマクロを標準モジュールに登録してください。
A1セルに取得開始のフォルダ名を記入してください。
例 c:\sample
A2以降にc:\sampleの下のファイル一覧が再帰的に表示されます。
-------------------------------------------------
Option Explicit
Dim write_row As Long
Public Sub フォルダ内ファイル一覧取得()
Dim folder As String
Dim maxRow As Long
folder = Range("A1").Value
maxRow = Cells(Rows.Count, "A").End(xlUp).Row
Range("A2:A" & maxRow).Value = ""
write_row = 2
Call getFileList(folder)
MsgBox ("完了")
End Sub
Sub getFileList(ByVal folder As String)
Dim FSO As Object
Dim oFile As Object
Dim oFolder As Object
Dim pos As Long
Set FSO = CreateObject("Scripting.FileSystemObject")
'ファイル名の取得
For Each oFile In FSO.GetFolder(folder).Files
pos = InStrRev(oFile.Path, "\")
'ファイル名を書き込む
Cells(write_row, "A").Value = Right(oFile.Path, Len(oFile.Path) - pos)
write_row = write_row + 1
Next
'サブフォルダ取得
For Each oFolder In FSO.GetFolder(folder).SubFolders
Call getFileList(oFolder.Path)
Next
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(ソフトウェア) 画像のファイル形式、拡張子が変わると、性能が変わると思うのですが、ファイル名の「jpg、png、do 8 2022/08/10 13:37
- その他(パソコン・スマホ・電化製品) 拡張子の選択方法について 4 2022/09/22 22:04
- PHP $filePath = './user_img/' . $file['name'];? 1 2022/12/10 07:29
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行して 作業フォルダの中にある PDFファイル名を 3 2023/07/01 15:16
- Windows 10 JPG PNG サポートされていない形式 (JPGファイルで開ける、開けないがある場合) 4 2022/04/23 13:46
- Excel(エクセル) 【VBA】フォルダAにある2つのファイルの内1つを、フォルダBへ。もう1つを、フォルダBへ移動したい 6 2022/07/26 08:51
- iOS ファイルの名前変更 2 2022/08/11 20:47
- その他(ソフトウェア) コマンドプロンプトについて教えてください。 状況: 画像編集ソフト上でネットから保存した画像を使うの 3 2022/05/26 11:14
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vbaサブフォルダーをワイルドカ...
-
動かなくなってしまった古いVBA...
-
excel マクロ PDF化の際のエラ...
-
ExcelのVBAコードについて教え...
-
AccessからOLEオブジェクト型の...
-
FTP対応のアプリケーション
-
「AccessViolationException」...
-
VBA:ファイルプロパティの一部...
-
FileDialog オブジェクトでファ...
-
VB6でUTF-8ファイルの読取りを
-
ファイルを開く時間測定のスク...
-
【VBAマクロ初心者】Excel VBA...
-
サブフォルダ含むフォルダ内の...
-
エクセルのVBAで開いている...
-
EXCEL VBAを使ったファイル解析...
-
更新日が指定日以降のファイル取得
-
【ACCESS VBA】アクセスからデ...
-
ファイルのアクセス回数について
-
バッチファイル 二つ上のディ...
-
エクセルのプロパティーでセキ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
vbaサブフォルダーをワイルドカ...
-
FileDialog オブジェクトでファ...
-
サブフォルダ含むフォルダ内の...
-
ffftpでファイル取得が0バイト...
-
動かなくなってしまった古いVBA...
-
excel マクロ PDF化の際のエラ...
-
VBからExcelファイルを開くとき...
-
「エクセルファイルが開いてい...
-
VBAでフォルダ内のhtmlファイル...
-
複数のワークブックのVBAを変更...
-
ExcelVBA 文字コード変換
-
Wordのプロパティ・総ページ数...
-
「AccessViolationException」...
-
エクセルのVBAで開いている...
-
AccessからOLEオブジェクト型の...
-
VBAで色々な種類のファイルを開く
-
VBAでCSVファイルを読み込もう...
-
VB.net XMLの作成方法 Iniの代替
-
【ACCESS VBA】アクセスからデ...
-
VBA、ファイル名検索から開く、...
おすすめ情報