如何将EXCEL中同一个工作薄多张工作表合并
Sub 合并当前工作簿下的所有工作表()
Application.ScreenUpdating = False
For j = 1 To Sheets.Count
If Sheets(j).Name <> ActiveSheet.Name Then
X = Range("A65536").End(xlUp).Row + 1
Sheets(j).UsedRange.Copy Cells(X, 1)
End If
Next
Range("B1").Select
Application.ScreenUpdating = True
MsgBox "当前工作簿下的全部工作表已经合并完毕!", vbInformation, "提示"
End Sub
第一步:摁下ALT + F11,进入VBA编辑器。
第二步:双击编辑器左上角的“工程资源管理器”里面的“ThisWorkBook”,在右侧的代码区粘贴下面的代码:
我们下面这个表为例,我们要把 土石方、钢结构、土建、门窗安装 这四个工作表合并到一张总表里面!
操作步骤:
首先,我们要下载和安装《慧办公》
工具下载地址:http://pan.baidu.com/share/link?shareid=60631576&uk=2788338580
然后打开工作簿,选择【合并多工作表为一表】,如下图
选择后会弹出如下窗体,根据上表设置的条件如下
点击【确定】即可,合并后的效果如下
01
打开EXCEL表格,为了举例,分别在两个表格中输入不同的数据。
02
按住ALT键不放,再按F11键,打开VBE编辑器。
03
右键点击工程窗口下的Microsoft Excel对象,再指向插入。
04
插入一栏的旁边出现了列表,点击模块。
05
出现了模块的界面。
06
输入以下代码:
Option Explicit
Sub hbgzb()
Dim sh As Worksheet, flag As Boolean, i As Integer, hrow As Integer, hrowc As Integer
flag = False
For i = 1 To Sheets.Count
If Sheets(i).Name = "合并数据" Then flag = True
Next
If flag = False Then
Set sh = Worksheets.Add
sh.Name = "合并数据"
Sheets("合并数据").Move after:=Sheets(Sheets.Count)
End If
For i = 1 To Sheets.Count
If Sheets(i).Name <> "合并数据" Then
hrow = Sheets("合并数据").UsedRange.Row
hrowc = Sheets("合并数据").UsedRange.Rows.Count
If hrowc = 1 Then
Sheets(i).UsedRange.Copy Sheets("合并数据").Cells(hrow, 1).End(xlUp)
Else
Sheets(i).UsedRange.Copy Sheets("合并数据").Cells(hrow + hrowc - 1, 1).Offset(1, 0)
End If
End If
Next i
End Sub07
退回到工作表界面,按住ALT键不放,再按F8键,打开宏对话框,点击执行hbgzb宏。
08
工作表合并完成。
参考资料
百度经验.百度[引用时间2018-5-8]