- 締切済み
ファイル名からフォルダを自動生成して振り分けしてくれるソフト
ファイル名からフォルダを自動生成して振り分けしてくれるソフト はありませんでしょうか。 当方、仕事で大量の連番ファイルを扱います。 ほとんどは以下のようなファイル名になっています。 abc.001.jpg abc.002.jpg abc.003.jpg ... qwerty_001.jpg qwerty_002.jpg qwerty_003.jpg ... ファイル名の長さは一意ではありません。 連番前の区切りには「.」ピリオドか「_」アンダーバーが使われます。 これらがひとつのフォルダの中にあるとき、 そのフォルダもしくは必要なファイルを指定することで、 ピリオドもしくはアンダーバーより前のファイル名からフォルダを自動生成して それぞれの連番を振り分けてくれることのできるソフトです。 ネットでもさまざまなファイル管理ソフトがありますが、 一番求める機能に近いものでも、ファイル名の前方からの文字数で フォルダ名を指定する必要があるなど、制限がありました。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- misatoanna
- ベストアンサー率58% (528/896)
Excelマクロを作ってみました。 1.Excelを起動し [Alt]+[F11] で開く Visual Basic Editor のウィン ドウで、[挿入]-[標準モジュール] とたどります。 2.[ツール]-[参照設定] で Microsoft Scripting Runtime を指定しま す。 3.標準モジュールに下記をコピペして、そのウィンドウを閉じます。 Sub Furiwake() 'ファイル名の連番前の文字列でフォルダを作り分配。 Dim FPath1, FPath2, FName Application.ScreenUpdating = False FPath1 = Range("A1").Value & "\" FName = Dir$(FPath1 & "*.*") Do While FName <> "" Select Case InStr(FName, "_") Case Is > 0 FPath2 = Left(FName, InStr(FName, "_") - 1) Case Else FPath2 = Left(FName, InStr(FName, ".") - 1) End Select On Error Resume Next MkDir$ FPath1 & FPath2 On Error GoTo 0 FileCopy FPath1 & FName, FPath1 & FPath2 & "\" & FName ' Kill FPath1 & FName '※ FName = Dir$ Loop Application.ScreenUpdating = True End Sub シートのセル A1 に、画像ファイルのあるフォルダのフルパスを次の ように入力して、[ツール]-[マクロ]-[マクロ] から Furiwake を指定 して実行します。 入力例: C:\MyFiles\PhotoData\JPGFiles この入力されたフォルダの中にサブフォルダを作成して振り分けます。 ※の行の先頭の Kill の前にある ’を削除して実行すると、元画像 ファイルが削除されてしまいますので、テストはこのまま実行して ください。
- ZENO888
- ベストアンサー率49% (8944/18242)
ファイル指定のみだけど、下記が一番近いかなぁ・・・ 使い方がイマイチだけど・・・ DirCreator http://www.vector.co.jp/soft/winnt/util/se373773.html