質問: excelで、表を作成したいのですが... データの整理を、各フォルダに 個人・団体名と、会員番号をつけて登録月日の順で表を作っていました しかし、先日 hdが壊れたため excelのシートが消えてしまいました データの入ったドライブは無事だったので、 [フォルダ名をコピー]⇒[セルに貼付け] を繰り返せば同じシートが作成できます この作業を簡単なマクロで自動化する方法はないでしょうか 約1000件分なので時間を掛ければ何とかなるとは思いますが、他にも消失したデータがあり困っています どうか、よろしくお願いします//
回答: フリーウェアでテキストファイルやエクセルに書き出すものもあると 思いますが、 エクセルvbaのダイアログで選択したフォルダ内のサブフォルダ一覧 をセルに書き出すサンプルコードです。 sub getsubfol() dim oya as string dim fol as string dim i as long dim obj as object dim myobj as object set obj = createobject("shell.application") set myobj = obj.browseforfolder(0, "選択して下さい。", 0) if myobj is nothing then exit sub oya = myobj.items.item.path & "\" fol = dir(oya, vbdirectory) do while fol <> "" if (getattr(oya & fol) and vbdirectory) = vbdirectory then if not fol like ".*" then i = i + 1 worksheets(1).cells(i, 1).value = fol end if end if fol = dir() loop end sub