快速将多个excel表合并成一个excel表

应用场景:有很多张excel,而且excel表里面的结构基本一样,如何快速将这些excel合并在一个excel页面,便于后期分析和统计

技术实现:利用excel表的宏计算实现。

注意:金山的WPS没有宏计算功能。只能用microsoft excel来实现。

具体如下

1、我们需要把多个excel表都放在同一个文件夹里面,并在这个文件夹里面新建一个excel。如图所示:

2、用microsoft excel打开新建的excel表,并右键单击sheet1,找到“查看代码”,单击进去。进去之后就看到了宏计算界面。如图所示:

3、然后我们把下面这些宏计算的代码复制进去,然后找到工具栏上面的“运行”下的“运行子过程/用户窗体”,代码如下,如图所示: 

复制代码

sub 合并当前目录下所有工作簿的全部工作表() 
dim mypath, myname, awbname 
dim wb as workbook, wbn as string 
dim g as long 
dim num as long 
dim box as string 
application.screenupdating = false 
mypath = activeworkbook.path 
myname = dir(mypath & "\" & "*.xls") 
awbname = activeworkbook.name 
num = 0 
do while myname <> "" 
if myname <> awbname then 
set wb = workbooks.open(mypath & "\" & myname) 
num = num + 1 
with workbooks(1).activesheet 
.cells(.range("a65536").end(xlup).row + 2, 1) = left(myname, len(myname) - 4) 
for g = 1 to sheets.count 
wb.sheets(g).usedrange.copy .cells(.range("a65536").end(xlup).row + 1, 1) 
next 
wbn = wbn & chr(13) & wb.name 
wb.close false 
end with 
end if 
myname = dir 
loop 
range("a1").select 
application.screenupdating = true 
msgbox "共合并了" & num & "个工作薄下的全部工作表。如下:" & chr(13) & wbn, vbinformation, "提示" 
end sub

复制代码

关于[A65536]的含义: 在1995-2006年,excel工作簿包含65536行,但现在的office 2007中工作簿包含1048576行。[A65536]就是A列的最后一行的意思,这段话的意思就是,从A列最后一行向上找,找到有数据的行为止。 如果是[B65536]则是从B列最后一行向上找,找到有数据的行为止。

4、运行之后,等待几秒钟,等运行完毕,就是合并完成之后,会有提示,点确定就可以了。查看合并后的数据,就是同一个文件夹里面17个excel表数据合并后的结果。效果如图所示。

 ----------------------------------------------------------------------------------------------------------------------------------------------------------

参考资料:https://jingyan.baidu.com/article/f0062228d16ba9fbd3f0c82b.html?qq-pf-to=pcqq.c2c       //如何快速把多个excel表合并成一个excel表

  • 26
    点赞
  • 106
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
### 回答1: 将多个Excel文件合并一个Excel的方法有以下几种: 1. 手动复制粘贴:打开每个Excel文件,选中需要合并的数据,复制粘贴到一个新的Excel格中。 2. 使用Excel自带的合并工具:打开一个新的Excel格,选择“数据”选项卡,点击“从其他合并”按钮,选择需要合并Excel文件,按照提示进行操作即可。 3. 使用VBA宏:在Excel中按下“Alt+F11”打开VBA编辑器,编写VBA宏代码,实现自动合并多个Excel文件的数据。 4. 使用第三方工具:有一些第三方工具可以帮助用户快速合并多个Excel文件,例如Kutools for Excel、Ablebits等。 以上是几种常见的将多个Excel文件合并一个Excel的方法,用户可以根据自己的需求选择适合自己的方法。 ### 回答2: 在工作和学习中,我们常常需要将多个Excel文件合并一个Excel,以便进行数据分析和处理。接下来就让我来介绍一下多个Excel文件合并的方法。 第一种方法:使用Excel自带功能合并多个工作。 1.打开一个新的 Excel 文件,依次点击“数据”-“从范围中选择数据”-“从其他来源”-“从 Microsoft查询”。 2.在弹出的“查询向导”窗口中依次选择“Excel 文件”-“浏览”。 3.在弹出的“打开”窗口中选择要合并Excel 文件,点击“确定”。 4.在“查询向导”中选择“确定”,然后选择要合并工作,点击“下一步”。 5.选择数据范围,点击“下一步”。 6.在“查询向导”中选择“完”,将数据导入到新 Excel 文件中。 这种方法虽然简单,但要注意的是,每个Excel文件的格式必须相同,否则会出现数据错乱的情况。 第二种方法:使用VBA脚本合并多个Excel文件。 1.打开一个新的 Excel 文件,按下“ALT+F11”进入VBA界面。 2.在VBA界面中选择菜单栏“插入”-“模块”。 3.将下面的VBA脚本全部复制粘贴到新建的模块中: Sub Combine() Dim FilesToOpen Dim x As Integer On Error GoTo ErrorHandler Application.ScreenUpdating = False '获取文件名 FilesToOpen = Application.GetOpenFilename _ (FileFilter:="Excel Files (*.xl*), *.xl*", _ MultiSelect:=True, Title:="选择要合并的文件") '保留打开的Excel文件数 x = 1 '循环打开每个Excel文件 If TypeName(FilesToOpen) = "Boolean" Then '没有选择文件时给出提示 MsgBox "您没有选择要合并的文件!" quit: Exit Sub End If '清空当前工作 ActiveSheet.Cells.Delete '循环打开Excel文件 For i = 1 To UBound(FilesToOpen) '打开Excel文件 Workbooks.Open FileName:=FilesToOpen(i), ReadOnly:=True '复制数据 ActiveSheet.Range("A1", ActiveSheet.Cells.SpecialCells(xlLastCell)).Copy '将数据粘贴到当前工作 ThisWorkbook.Worksheets(x).Activate ActiveSheet.Cells.SpecialCells(xlLastCell).Offset(1, 0).PasteSpecial xlPasteValues '计数器自增1 x = x + 1 '关闭Excel文件 Workbooks(FilesToOpen(i)).Close SaveChanges:=False Next i '自动调整列宽 ActiveSheet.Cells.EntireColumn.AutoFit '恢复更新 Application.ScreenUpdating = True '提示合并 MsgBox "您选择的" & x - 1 & "个Excel文件已合并到当前工作中!" Exit Sub ErrorHandler: If Err.Number = 1004 Then '如果文件格式不同,跳过并继续合并一个文件 Resume Next Else '如果出现其他错误,给出提示并退出合并过程 MsgBox "出现问题! " & Err.Number & vbCrLf & Err.Description GoTo quit End If End Sub 4.保存并关闭VBA窗口。 5.按下“ALT+F8”,选择“Combine”,点击“运行”。 完以上操作,合并后的数据就会自动添加到当前工作中。 综上所述,以上两种方法合并Excel文件的方法都比较简单易懂,大家可以根据实际情况选择适合自己的方法。同时,还要注意的是,合并前要确保每个Excel文件的格式相同,否则会出现数据错乱的情况。 ### 回答3: 如果您需要将多个Excel文件合并一个Excel,下面是几种可行的方法: 1.使用Excel 工作合并 Excel 工作合并可以帮助您将多个Excel文件合并一个工作,具体步骤如下: a. 打开其中一个Excel格 b. 点击选定范围区域,然后按Ctrl+C复制 c. 打开新的Excel格,点击第一个单元格,按Ctrl+V d. 重复上述步骤,将所有要合并格复制并粘贴到同一个工作中 2.使用Excel VBA 如果您有一定的VBA编程经验,可以使用VBA编程自动合并多个Excel格,具体步骤如下: a. 打开一个新的Excel文档,在“开发工具”中开启“Visual Basic”窗口 b. 在“新建”中添加一个Module c. 在Module中编写VBA程序来读取并合并Excel格。 3.使用Power Query Power Query是Excel提供的插件,可以帮助您连接多个文件并将它们合并一个格中,具体步骤如下: a. 打开Excel文档,点击“数据”选项卡 b. 选择“从文件/数据库”开始导入数据 c. 选择要导入的文件,然后选择“合并查询” d. 选择要合并工作,然后单击“确定” e. 最后,您将看到一个合并格,其中包含了所有选定文件的数据。 以上是几种较常用的多个Excel文件合并一个Excel的方法。您可以根据自己的需求选择合适的方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值