vba如何打开一个文件夹及其子文件夹中所有的Excel表并处理合成一个表以方便日后查询,请高手指教不胜感谢

因为每个子文件夹名称、Excel文件名称都不是唯一的,需要编辑的这样的Excel文件又有很多,希望大家能帮忙一下。我现在知道一个文件夹名称,它下面包含几级子文件夹,我想要... 因为每个子文件夹名称、Excel文件名称都不是唯一的,需要编辑的这样的Excel文件又有很多,希望大家能帮忙一下。

我现在知道一个文件夹名称,它下面包含几级子文件夹,我想要在不打开excel表的情况下,依次将所有的已知的子文件夹下的excel表,汇总并处理成一个sheet表。如下所示:

初学vba,请大家多多指教。先谢谢大家了!
展开
 我来答
zl998100
2014-03-19 · TA获得超过730个赞
知道小有建树答主
回答量:1067
采纳率:50%
帮助的人:1049万
展开全部
新建一个汇总表,ALF+F11 打开VBE 新建一个模块 粘贴如下代码, 然后运行此宏

Sub 合并工作簿()
Dim wb As Workbook
Dim sh As Worksheet
Dim tsh As Worksheet
Dim col As Long
Dim i As Long
Set tsh = ThisWorkbook.Sheets(1)
tsh.Cells.Clear
    With Application.FileSearch '调用fileserch对象
        .NewSearch '开始新的搜索
        .LookIn = "D:\360data\重要数据\桌面\新建文件夹"  '设置搜索的路径
        .SearchSubFolders = True '搜索范围包括 LookIn 属性指定的文件夹中的所有子文件夹
        .Filename = "*.xl*" '设置搜索的文件类型
        If .Execute() > 0 Then '如果找到文件
            For i = 1 To .FoundFiles.Count '在搜索到的文件中循环
                Set wb = Workbooks.Open(.FoundFiles(i)) '打开文件
                For Each sh In wb.Sheets '在打开的工作簿中循环每个sheet
                    col = tsh.UsedRange.Columns.Count + tsh.UsedRange.Column '汇总表,表1 当前数据最后一列的列号
                    sh.UsedRange.Copy tsh.Cells(1, col + 1) '把每个表都复制到 汇总表,表1
                Next sh
            wb.Close False  '关闭打开的工作簿
            Next i
        Else
               MsgBox "没找到文件"
        End If
        Set wb = Nothing
        Set tsh = Nothing
     End With

End Sub

 注:由于 fileserch对象 只存在于2003版本, 此方法其他高级版本不适用

表里如一
2014-03-19 · 知道合伙人软件行家
表里如一
知道合伙人软件行家
采纳数:2066 获赞数:11637
从事6年生产管理,期间开发了多款小软件进行数据处理和分析,后

向TA提问 私信TA
展开全部
建议楼主把文件发出来。找人做。
你现在不熟练VBA的很多语法,属性,方法。要教你还不如写给你看。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ExcelOffice
2014-03-19 · TA获得超过570个赞
知道小有建树答主
回答量:1583
采纳率:0%
帮助的人:742万
展开全部
可以实现,就是你的表格太不规范了。徒增很多代码啊。
追问
这个可以优化哈,你能帮忙给个代码,让我操作一下吗,谢谢拉
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
feng_3318
2014-03-19 · TA获得超过222个赞
知道答主
回答量:253
采纳率:100%
帮助的人:86.5万
展开全部
关注一下,我也想知道
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式