Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 3093|回复: 7

[VBA] 用VBA数组把多个工作表中数据 汇总到一个工作表中

[复制链接]
发表于 2017-2-9 16:56 | 显示全部楼层 |阅读模式

用VBA数组把多个工作表中数据   汇总到一个工作表中


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2017-2-9 19:12 | 显示全部楼层
试试,如果好用,请给最佳。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 1 +6 收起 理由
laoau138 + 6 来学习

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2017-2-9 19:19 | 显示全部楼层
本帖最后由 laoau138 于 2017-2-9 19:27 编辑
乐乐2006201506 发表于 2017-2-9 19:12
试试,如果好用,请给最佳。

结果完全正确  

VBA把字典改写成 纯数组方法 按列计算遗漏值  
http://www.excelpx.com/thread-427607-1-1.html

回复

使用道具 举报

 楼主| 发表于 2017-2-9 19:28 | 显示全部楼层
乐乐2006201506 发表于 2017-2-9 19:12
试试,如果好用,请给最佳。



不知道速度能不能  再快一点啊

Sub 汇总所有数据()
Application.ScreenUpdating = False
[a5:n8888] = ""
Dim myPath$, myFile$, nm$, s%, r&, arr, wb As Workbook
myPath = ThisWorkbook.Path & "\"
myFile = Dir(myPath & "*.xls")
    Do While myFile <> ""
        If myFile <> ThisWorkbook.Name Then
            Set wb = GetObject(myPath & myFile)
                arr = wb.Worksheets(1).[a5:n8888] '可调成合适的区域
                With ThisWorkbook.Worksheets(1)
                    r = .Cells(.Rows.Count, 2).End(xlUp).Row
                    If r < 4 Then r = 4
                    .Range("a" & r).Offset(1).Resize(UBound(arr), UBound(arr, 2)) = arr
                End With
            wb.Close False
        End If
        myFile = Dir
    Loop
Application.ScreenUpdating = True
End Sub

回复

使用道具 举报

发表于 2017-2-9 19:31 | 显示全部楼层
laoau138 发表于 2017-2-9 19:28
不知道速度能不能  再快一点啊

Sub 汇总所有数据()

你指哪个速度快一些,是指我的代码,还是你发的代码?你发的代码已经都好了。估计提速空间不大。
回复

使用道具 举报

 楼主| 发表于 2017-2-9 19:32 | 显示全部楼层
乐乐2006201506 发表于 2017-2-9 19:31
你指哪个速度快一些,是指我的代码,还是你发的代码?你发的代码已经都好了。估计提速空间不大。

2个代码速度差不多
难道没有更快的




回复

使用道具 举报

发表于 2017-2-9 19:35 | 显示全部楼层
laoau138 发表于 2017-2-9 19:32
2个代码速度差不多
难道没有更快的

这两个思路差不多,都要从另一个工作簿中复制取数,所以速度差不多啊。
回复

使用道具 举报

 楼主| 发表于 2017-2-9 20:01 | 显示全部楼层
乐乐2006201506 发表于 2017-2-9 19:35
这两个思路差不多,都要从另一个工作簿中复制取数,所以速度差不多啊。


VBA代码改写不要用find  明细表

http://www.excelpx.com/thread-427613-1-1.html


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-8 13:44 , Processed in 0.274619 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表