自动将文件组织到文件夹中

时间:2016-10-17 04:07:33

标签: excel vba directory

我正在尝试将某些文件自动组织到特定的文件位置。文件类型都是.xls和.pdf,我只需要根据预先确定的列表将它们分类到特定的文件夹中。

例如我的列表是:

----------------------------------------
| Files     |   Directory to move to   |
----------------------------------------
| ABC.xls   |    \Folder1\             |
| ABC.pdf   |    \Folder1\             |
| xyz.xls   |    \Folder2\             |
| xyz.pdf   |    \Folder2\             |
----------------------------------------

所以我有文件名和扩展名以及需要移动到的文件夹。是否可以在Excel中使用此列表,然后宏将搜索保存工作簿的相同路径,找到文件并将其移动到新路径(如果尚未创建文件夹,则创建该文件夹)?

2 个答案:

答案 0 :(得分:0)

假设原始文件路径(例如“C:\ file1.xlsm”)在A列中,而目标文件路径在B列中(例如“C:\ Data Files \ Newfile1.xlsm”),您可以简单地使用{ {1}}将文件复制并重命名为新目标,FileCopy删除原始文件。我认为这比创建临时bat文件,运行它然后删除它要容易得多。您可能需要使用Kill来创建新目录,但无论如何您都必须在Bat文件中执行类似操作。

MkDir

答案 1 :(得分:0)

我创建了一个应用程序Sorter,它以类似的方式工作,但不需要excel或宏。应用程序Sorter的功能是通过扩展名将文件分组,即pdf,但与docx分开。还有一个附加选项可以将文档组合在一起,但与视频和音频分开。您可以确定文件的目标,它还具有递归功能,可以检查子文件夹及其子文件夹,并根据文件的初始位置对文件进行排序/分组。应用程序知道许多文件类型,但您可以添加更多文件类型。试一试,看看它是否有帮助。