あなたはフォルダー内のフォルダーリストを作りたいとき、フォルダー名を一つずつコピペするのが面倒だったことはありませんか?
エクセルのVBA・マクロを使えば、自動でエクセルシートにリストを抽出し、一覧表を作れます。
今回は「エクセルでフォルダー内のフォルダーリストをシートに書き出すマクロボタンを作る方法」を紹介します。
エクセルでフォルダー内のフォルダーリストをシートに書き出すマクロボタンを作る方法
エクセルでフォルダー内のフォルダーリストをシートに書き出すマクロボタンを作る方法です。
マクロを作るときは、「開発」タブを使います。
開発タブが出ていない方は、下のリンクで出し方を紹介していますので、まずは準備をお願いします。
→エクセルで開発タブを表示する方法
下の画像のように、A1~A9セルにフォルダーにリストを抽出するのを例に紹介します。
![](https://everyday-level-up.com/wp-content/uploads/2023/03/1-15.jpg)
1.「開発」タブをクリック →「挿入」をクリック →「ボタン」をクリック
![](https://everyday-level-up.com/wp-content/uploads/2023/03/2-12.jpg)
2.「新規作成」をクリック
![](https://everyday-level-up.com/wp-content/uploads/2023/03/3-15.jpg)
3.コード入力画面が開く
![](https://everyday-level-up.com/wp-content/uploads/2023/03/4-12.jpg)
4.コードを入力
コードを入力します。
デスクトップの、仕事Aフォルダ内の、全てのサブフォルダを検索し、フォルダ名をエクセルシートに表示する、という意味です。
![](https://everyday-level-up.com/wp-content/uploads/2023/03/5-11.jpg)
赤枠部のコードです。
Dim MyFolder As String, MySubFolder As String
Dim i As Long
MyFolder = Environ(“USERPROFILE”) & “\Desktop\仕事A\”
MySubFolder = Dir(MyFolder & “*”, vbDirectory)
i = 1
Do While MySubFolder <> “”
If MySubFolder <> “.” And MySubFolder <> “..” Then
If (GetAttr(MyFolder & MySubFolder) And vbDirectory) = vbDirectory Then
Range(“A” & i).Value = MySubFolder
i = i + 1
End If
End If
MySubFolder = Dir()
Loop
コードを入力したら、コードの入力画面を閉じて下さい。
5.ボタンができた
ボタンができました。
![](https://everyday-level-up.com/wp-content/uploads/2023/03/6-9.jpg)
6.「仕事A」のフォルダ内
デスクトップの仕事Aのフォルダ内は下のようになっているとします。
![](https://everyday-level-up.com/wp-content/uploads/2023/03/7-11.jpg)
7.ボタンをクリック
![](https://everyday-level-up.com/wp-content/uploads/2023/03/8-12.jpg)
8.リストに反映される
先程のフォルダ名「A~E」がリストに反映され、一覧が作成できました。
![](https://everyday-level-up.com/wp-content/uploads/2023/03/9-10.jpg)
これでフォルダ名をコピペしなくて良くなりましたね。
まとめ
エクセルでフォルダー内のフォルダーリストをシートに書き出すマクロボタンを作る方法です。
1.「開発」タブをクリック →「挿入」をクリック →「ボタン」をクリック
2.新規作成をクリック
3.コードを入れる画面が出る
4.コードを入力
5.ボタンができる
6.ボタンをクリック
7.リストができる
これでファイル一覧表の作成が楽になりました。
フォルダーリスト以外にも、エクセルのシート名をリスト化したいときもありますよね。
下のリンク先もご参考下さい。
フォルダーのリスト化以外にも、エクセル内のデータリストから一部を抽出したいときもありますよね。
名簿の抽出や、TO DOリストの抽出など。
エクセルでチェックしたところだけを抽出する方法を紹介していますので、下のリンク先へどうぞ。
コメント