前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ExcelVBA一键汇总多文件的指定工作表的到一个文件

ExcelVBA一键汇总多文件的指定工作表的到一个文件

作者头像
哆哆Excel
发布2022-10-25 13:37:30
9000
发布2022-10-25 13:37:30
举报
文章被收录于专栏:哆哆Excel

ExcelVBA一键汇总多文件的指定工作表的到一个文件

【问题】下发给下面各单位的表格收集信息资料,上交上来后有很多个文件,文件的内容格式是一样(我下发时定的格式),我想把这些资料汇总在一起,

【传统做法】

打开一个文件—选中要的内容--复制—-粘贴到汇总表—关闭,

再打开一个文件—选中要的内容--复制—粘贴到汇总表—关闭,

再打开一个文件—选中要的内容-复制—粘贴到汇总表--关闭。。。。。天啊有100个,那我是不是要做一天重复再重重复复的工作。

【解决方法】VBA程序请上来帮我

1.把汇总的文件与上交文件放在这里

2.上交文件中全部是上交上来的文件

3.它们的格式是一样的

4.===代码如下=========

Sub 汇总指定文件指定工作表()

With Application.FileDialog(msoFileDialogFolderPicker)

'--------取得用户选择的文件夹路径

.InitialFileName = ThisWorkbook.Path

If .Show Then strPath = .SelectedItems(1) Else Exit Sub

End With

If Right(strPath, 1) <> "\" Then strPath = strPath & "\"

'MsgBox "选择了:" & Chr(10) & strPath

start_row = Application.InputBox("请输入工作表标题行数:", , 1, , , , , 1)

If start_row = "" Then Exit Sub

'如果按取消就退出

ti = Timer

Application.ScreenUpdating = False '重新打开屏幕更新

Application.DisplayAlerts = False

Set mysht = ActiveSheet

MsgBox mysht.Name

m = 1

mfile = Dir(strPath & "*.xls*")

Do While mfile <> ""

If mfile <> ThisWorkbook.Name Then

' MsgBox strPath & mfile

With GetObject(strPath & mfile)

If m = 1 Then

.Sheets(1).UsedRange.Copy mysht.Range("a1")

Else

mysht_row = mysht.UsedRange.Find("*", , , , 1, 2).Row + 1

With .Sheets(1)

L_row = .Cells.Find("*", , , , 1, 2).Row

.Rows(start_row + 1 & ":" & L_row).Copy

mysht.Rows(mysht_row).PasteSpecial Paste:=xlPasteAll

End With

End If

.Close False

End With

m = m + 1

End If

mfile = Dir

Loop

Application.ScreenUpdating = True '重新打开屏幕更新

Application.DisplayAlerts = True

MsgBox "汇总完成,共汇总了 " & m & "个文件" & Chr(10) & "用时:" & Format(Timer - ti, "000.00秒")

End Sub

5.打开汇总文件按“ALT+F11”出现visual Basic for application的窗口,插入一个模块,把代码放在这

6.插入一个按钮,指定宏是“汇总指定文件指定工作表”

7.点击按钮出现一个选择文件夹的对话框,确定

8.出现一上请输入标题行数的对话框,输入你的要汇总的文件标题行数

9.几秒后汇总完成啦。

.

=====今天就学习到此======

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 哆哆Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档