この記事はVBAを用いて、指定したフォルダの中にある、フォルダのフルパスを一括取得する方法をご紹介します。
それでは早速やっていきましょう!
フォルダ内にあるフォルダのフルパス取得方法
今回は以下の画像のように、あるフォルダの中に入っているフォルダのフルパスを一括取得する方法をご紹介します。
手順①検索フォルダの指定
まずはエクセルファイルを開きます。
今回は以下の画像のように検索されるフォルダのフルパスをあらかじめ記述しています。
今回はA4セル以降に内部のフォルダのフルパスを表示します。
手順②フルパス取得のコードを記述⇒実行
VBAを開き、以下のコードを記述します。
※VBAの使い方がわからない、という方は以下の記事をご覧ください。
【初心者用】エクセルマクロ(VBA)の始め方を詳細解説 – ヒガサラblog
以下が実行コードです。
Sub forder_search()
Dim base_folder As String
Dim sub_folder As String
Dim i As Integer
base_folder = Cells(2, 1)
sub_folder = Dir(base_folder & "\", vbDirectory)
i = 0
Do Until sub_folder = ""
If GetAttr(base_folder & "\" & sub_folder) = 16 Then
If sub_folder <> "." And sub_folder <> ".." Then
i = i + 1
Cells(3 + i, 1) = base_folder & "\" & sub_folder
End If
End If
sub_folder = Dir()
Loop
End Sub
※ご自身のシートに応じてCells(*,*)の部分を適宜変更してください。
コードの記述が終わればあとは実行するのみ!!
以下が実行結果です。
きちんとすべてのフォルダのフルパスが取得できていますね。
あとはこれらのフォルダを指定して、コピーなり、データ読み込みなりを行っていけば、冒頭に記載したような処理は簡単に行うことができるでしょう。
おわりに
というわけで今回は指定したフォルダの中に入っているフォルダのフルパスを一括取得する方法についてご紹介しました。
一度作っておくと非常に便利ですので、ぜひご活用ください。
このブログではエクセルスキルを中心に、さまざまな業務効率化スキルをご紹介しています。
■エクセルについてもっと詳しくなりたい。
■業務を効率化していきたい。
こんな人はぜひ他の記事も読んでみてください。
最後に・・・
このブログはブログ村に参加しています。
このブログを応援してくれる方は以下のボタンを押していただけると嬉しいです。
Twitterもやっていますので、興味があればフォローよろしくお願いします。
それではまた!!
コメント