如何根据excel表格列表批量搜索文件夹并将搜索到的文件夹放到同一个文件夹里? 60

有excel表格,一整列都是需要搜索的文件夹的名称,怎么样可以将那一列的文件夹在一大堆文件夹里面搜索出来并放到另一个文件夹里?... 有excel表格,一整列都是需要搜索的文件夹的名称,怎么样可以将那一列的文件夹在一大堆文件夹里面搜索出来并放到另一个文件夹里? 展开
 我来答
东莞鲜蔬使者
2016-09-09 · TA获得超过672个赞
知道小有建树答主
回答量:643
采纳率:71%
帮助的人:131万
展开全部
写vba代码,使用fso对象(需要添加引用miscrosoft script runtime)
更多追问追答
追问
可以写一个可以实现的代码吗?直接在粘贴在这里,谢谢
追答
这是我以前写的一个函数,你参考一下。

'使用FSO对象(引用库Miscrosoft Scripting Runtime)获取某文件夹下所有相同后缀的文件路径
Public Function getAllFiles(FolderPath As String, FileExt As String) As String

'参数 FolderPath:输入批处理文件夹路径;
'参数 FileExt:需获取的文件后缀,仅支持一种后缀,不带"."号;
'返回值:FolderPath文件夹下包括子文件夹的所有FileExt后缀的文件路径(相对路径)字符串,"|"间隔

Dim tempPath As String '储存路径名数组

Dim fsoObject As FileSystemObject

Dim fsoFolder As Folder

Dim fsoFile As File

Dim fsoSubFld As Folder

tempPath = "" '初始临时储存

Set fsoObject = New FileSystemObject

Set fsoFolder = fsoObject.GetFolder(FolderPath) '获取文件夹对象

For Each fsoFile In fsoFolder.Files '遍历文件夹的文件

If fsoObject.GetExtensionName(fsoFile.Name) Like FileExt Then

tempPath = tempPath & fsoFile.Path & "|" '存储符合条件文件名

End If

Next

If fsoFolder.SubFolders.Count > 0 Then

For Each fsoSubFld In fsoFolder.SubFolders

tempPath = tempPath & getAllFiles(fsoSubFld.Path, FileExt) '递归调用自身

Next

End If

' getAllFiles = Left(tempPath, Len(tempPath) - 1) '删除末尾多余间隔符作为返回值

getAllFiles = tempPath

Set fsoObject = Nothing

End Function
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式