[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『フォルダの階層をExcelに出力』(初心者)
お世話になります。
エクスプローラー フォルダに格納されているファイル一覧について、
Excel等に、ファイル名一覧を出力する方法はございますでしょうか。
お手数ですがご教示頂ければ幸いです。
< 使用 Excel:Excel2016、使用 OS:Windows10 >
FileSystemObjectを使って再帰処理で階層をたどって ファイル一覧を取得することになると思います。Dir関数で も出来るのかもしれませんが。 もしかしたらコマンドラインでも出来るかも。 (OK) 2021/03/16(火) 13:29
参考まで。解説はしません。
https://proengineer.internous.co.jp/content/columnfeature/5043
(OK) 2021/03/16(火) 13:31
(γ) 2021/03/16(火) 14:30
最近どこかでファイル一覧取得の質もがあったような?と思って 探したら↓でした。
[[20181202145538]] 『ファイル名取得を、時間の順番で取得したい』(荒川)
マナさんのコードの
>s = Split(CreateObject("wscript.shell").exec("cmd /c dir /b/o-d """ & p & "*.jpg""").stdout.readall, vbCrLf)
を
s = Split(CreateObject("wscript.shell").exec("cmd /c dir /b/o-d/s """ & p & "*.jpg""").stdout.readall, vbCrLf)
にしたらサブディレクトリまで取得してくれます。
なお、サブディレクトリまで含める方法は、紹介済みの https://proengineer.internous.co.jp/content/columnfeature/5043 の その他のオプション で言及されています。 (OK) 2021/03/16(火) 15:44
今回 参考にしたサイト https://www.goodly.co.in/split-by-variable-columns-in-power-query/
1)空のクエリを追加 2)下記を詳細エディターにコピペ ソースは、実際のフォルダに修正のこと let ソース = Folder.Files("C:***\***\****"), 削除された他の列 = Table.SelectColumns(ソース,{"Folder Path", "Name"}), 結合された列 = Table.CombineColumns(削除された他の列,{"Folder Path", "Name"},Combiner.CombineTextByDelimiter("", QuoteStyle.None),"結合済み"), 追加されたカスタム = Table.AddColumn(結合された列, "カスタム", each Text.PositionOfAny([結合済み],{"\"},Occurrence.All)), 追加されたカスタム1 = Table.AddColumn(追加されたカスタム, "カスタム.1", each List.Count([カスタム]) + 1), 最大列数 = List.Max(追加されたカスタム1[カスタム.1]), 列リスト = List.Transform({1..最大列数}, each "階層" & Text.From(_) ), 区切り記号による列の分割 = Table.SplitColumn(結合された列, "結合済み", Splitter.SplitTextByDelimiter("\", QuoteStyle.Csv), 列リスト) in 区切り記号による列の分割
4)閉じて読み込む 5)フォルダを変更したいときは 「データの取得」-「データソースの設定」-「ソースの変更」
(マナ) 2021/03/16(火) 21:12
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.