首页  >  文章  >  软件教程  >  合并多个不同工作表的excel数据到一张总表

合并多个不同工作表的excel数据到一张总表

王林
王林转载
2024-01-17 14:30:061264浏览

合并多个不同工作表的excel数据到一张总表

合并多个不同工作表的excel数据到一张总表

我们需要把多个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("B65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)

For G = 1 To Sheets.Count

Wb.Sheets(G).UsedRange.Copy .Cells(.Range("B65536").End(xlUp).Row + 1, 1)

Next

WbN = WbN & Chr(13) & Wb.Name

Wb.Close False

End With

End If

MyName = Dir

Loop

Range("B1").Select

Application.ScreenUpdating = True

MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"

End Sub

4

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

END

注意事项

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

如何对Excel表格进行分类汇总

当需要在Excel中对数据进行分类计算时,除了使用数据透视表,还可以使用分类汇总命令。与数据透视表不同的是,它可以直接在数据区域中插入汇总行,从而可以同时看到数据明细和汇总。下面是分类汇总的使用方法:

在进行分类汇总前,需保证数据具有下列格式,即数据区域的第一行为标题行,数据区域中没有空行和空列,数据区域四周是空行和空列,如下图是几种商品在一些城市的销售数据。另外,如果数据区域在应用分类汇总前已被设置成Excel 2003列表或Excel 2007表,需将其转换为普通区域。因为对于Excel 2003列表或Excel 2007表无法使用分类汇总。

一、仅对某列进行分类汇总

例如上例中需要对各城市的销售量进行分类汇总,方法如下:

1. 首先对数据按需要分类汇总的列(本例为“城市”列)进行排序。

选择“城市”列中的任意单元格,在Excel 2003中单击工具栏中的排序按钮如“A→Z”。在Excel 2007中,选择功能区中“数据”选项卡,在“排序和筛选”组中单击“A→Z”按钮。

2. 选择数据区域中的某个单元格,在Excel 2003中单击菜单“数据→分类汇总”。如果是Excel 2007,则在“数据”选项卡的“分级显示”组中单击“分类汇总”。

3. 在弹出的“分类汇总”对话框中,在“分类字段”下选择“城市”,在“汇总方式”中选择某种汇总方式,可供选择的汇总方式有“和”、“计数”、“平均值”等,本例中选择默认的“和”。在“选定汇总项”下仅选择“销售额”。

4.单击确定,Excel将按城市进行分类汇总。

二、对多列进行分类汇总

如上例中需要同时对“城市”列和“商品名称”列进行分类汇总,可以插入嵌套分类汇总。

1.对数据进行多列排序,即进行多关键字排序。

首先选择数据区域中的某个单元格。

在Excel 2003中,单击菜单“数据→排序”。弹出“排序”对话框,其中主要关键字选择“城市”,次要关键字选择“商品名称”,其他选择默认。

如果是Excel 2007,在“数据”选项卡的“排序和筛选”组中单击“排序”命令,在弹出的“排序”对话框中,单击“添加条件”按钮添加次要关键字排序条件,然后主要关键字选择“城市”,次要关键字选择“商品名称”,其他选择默认。

2.对“城市”列进行分类汇总(外部分类汇总)。

按上述方法打开“分类汇总”对话框,在“分类字段”下选择“城市”,在“汇总方式”中选择默认的“和”,在“选定汇总项”下仅选择“销售额”。单击“确定”。

3.对“商品名称”列进行分类汇总(嵌套分类汇总)。

再次打开“分类汇总”对话框,在“分类字段”下选择“商品名称”,取消选择“替换当前分类汇总”,单击“确定”。

这时Excel将按“城市”列和“商品名称”列对“销售额”进行分类汇总。

如果不需要显示明细数据,可以单击左侧的分级显示符号,如本例中右上角的数字和左侧的减号来隐藏明细数据。

三、删除分类汇总

在“分类汇总”对话框中,单击“全部删除”即可。

怎样将各个表格里的数据汇总到一个excel表里的多个工作表里

如sheet0中A2开始是车牌号码,则B2为1日的耗油量,C2为2日的耗油量,D2为3日的耗油量,...,以此类推AE2为30日的耗油量。则操作如下:

1. 则在sheet0 中,输入公式:B2=VLOOKUP(A2,Sheet1!A:B,2,0),C2=VLOOKUP(A2,Sheet2!A:B,2,0),D2=VLOOKUP(A2,Sheet3!A:B,2,0),......AE2=VLOOKUP(A2,Sheet30!A:B,2,0)。

2. 在sheet0 中,选择B2到AE2(即所有设定公式的单元格)往下拖,一直拖到A列中有车牌号的那一行。

这样的话,你只要在不同的sheet表中输入相关的数据,则总表会自动识别, 但前提是车牌号码须保持一致性,否则无法自动识别,你先试试,保证管用。

以上是合并多个不同工作表的excel数据到一张总表的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:docexcel.net。如有侵权,请联系admin@php.cn删除