Excel进阶教程

同一文件下如何合并相同类型的表格,相信大家对这个问题困惑了很久,如何如何合并这些表格呢?合并之后是否会得到我们想要的表格呢?
通常情况下我们如果要使用Excel来合并同一类型的表格,我们一般将每个表格文件打开剪切我们需要的单元格,并一一粘贴到目标表格中,你会发现其中有很多重复的步骤,特别是当表格文件数量相当多的时候,这工作量就很大了,既然重复相同的步骤是麻烦的根源,那么我们为何不把这项工作交给计算机做呢?其实微软公司出品的办公软件Excel中就有这个功能,不过要实现这个功能,我们就要用到“宏”这个东西,简单的说“宏”就是帮你完成重复的操作,如何打开,使用宏呢?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Sub Add()  ' 合并当前目录下的所有表格
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

首先复制代码,然后在文件夹中新建一个表格文件,然后使用Excel打开!

关闭窗口,点击运行>宏

一会儿就合并好了,但是这个表格并不符合我们的要求,这时善用排序功能,就行了。