当前位置:首页教育技巧excel技巧excel数据库

excel怎么合并多个表的附表,多个,附表,合并

2024-07-16 12:27:40


1.如何合并excel中多个sheet

方法/步骤

首先我们要有自己的excel数据,并且我们需要的是microsoft excel,WPS没有这些负责的功能。比如我下面举例的,我自己有205页的数据需要合并,如图所示。

看到这么多数据页要合并,如果是复制粘贴的话,工作量就很大了。我们现在开始合并,首先要在最前页新建一个工作表。如图:

在新建的sheet表中“右键”,找到“查看代码”,然后看到宏计算界面。如图所示:

看到宏计算界面,我们就只需要把下面的代码复制进去,代码如下,效果如下:

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

做完上面的事情,然后只需要点击工具栏上面的“运行”下的“运行子过程/用户窗体”就可以了,合并完之后会有提示。提示完成之后就可以把宏计算界面关闭了。如图所示:

6

合并后的效果如下图,我们看到的是合并之后有8000多行,就是205页合并后的结果。谢谢。如有疑问,请留言。

2.如何将excel多个表数据合并一个表中

操作步骤:1、原始数据所在工作簿包含多个格式相同的工作表,只不过每个工作表内容不同,比如说不同人名的工作表数据或者不同部门填写的数据。

2、在原始数据同目录下新建一个工作簿,建立两个工作表,名称分别为“首页”和“合并汇总表”。3、按Alt+F11进入VBA代码编辑和调试界面。

4、根据下图提示,插入一个模块。5、将下述代码粘贴到模块空白处:复制代码代码如下:Sub CombineSheetsCells()Dim wsNewWorksheet As WorksheetDim cel As RangeDim DataSource, RowTitle, ColumnTitle, SourceDataRows, SourceDataColumns As VariantDim TitleRow, TitleColumn As RangeDim Num As IntegerDim DataRows As LongDataRows = 1Dim TitleArr()Dim ChoiceDim MyName$, MyFileName$, ActiveSheetName$, AddressAll$, AddressRow$, AddressColumn$, FileDir$, DataSheet$, myDelimiter$Dim n, in = 1i = 1Application.DisplayAlerts = FalseWorksheets("合并汇总表").DeleteSet wsNewWorksheet = Worksheets.Add(, after:=Worksheets(Worksheets.Count))wsNewWorksheet.Name = "合并汇总表"MyFileName = Application.GetOpenFilename("Excel工作薄 (*.xls*),*.xls*")If MyFileName = "False" ThenMsgBox "没有选择文件!请重新选择一个被合并文件!", vbInformation, "取消"ElseWorkbooks.Open Filename:=MyFileNameNum = ActiveWorkbook.Sheets.CountMyName = ActiveWorkbook.NameSet DataSource = Application.InputBox(prompt:="请选择要合并的数据区域:", Type:=8)AddressAll = DataSource.AddressActiveWorkbook.ActiveSheet.Range(AddressAll).SelectSourceDataRows = Selection.Rows. = Selection.Columns.CountApplication.ScreenUpdating = FalseApplication.EnableEvents = FalseFor i = 1 To NumActiveWorkbook.Sheets(i)..Sheets(i).Range(AddressAll).SelectSelection.CopyActiveSheetName = ActiveWorkbook.ActiveSheet.NameWorkbooks(ThisWorkbook.Name)..Sheets("合并汇总表").SelectActiveWorkbook.Sheets("合并汇总表").Range("A" & DataRows).Value = .Sheets("合并汇总表").Range(Cells(DataRows, 2), Cells(DataRows, 2)).SelectSelection.PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _SkipBlanks:=False, Transpose:=FalseSelection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _False, Transpose:=FalseSelection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _:=False, Transpose:=FalseDataRows = DataRows + (MyName).ActivateNext iApplication.ScreenUpdating = TrueApplication.EnableEvents = TrueEnd IfWorkbooks(MyName).CloseEnd Sub6、在“首页”工作表中按下图示范插入一个窗体控件并指定宏为插入的代码名称。

7、点击“首页”工作表中插入的按钮,根据提示,浏览到原始数据工作簿。8、下一步,用鼠标选择要合并的数据范围。

注意:每个工作表数据可能不一样,比如说有的是10行数据,有的是30行数据。在这里我们可以用鼠标选择任意工作表的一个较大范围,比如说A1:D100,保证比最多行数的工作表数据还多就可以,一会再删除空行。

9、点击确定按钮,待代码运行完毕后,所有的数据就都合并到了“合并汇总表”中。注意:1)A列的文本说明右侧的数据来自于原始数据表的哪个工作表;2)数据之间会有一些空行,下面通过筛选删除。

10、选中全部数据区域,执行自动筛选。然后选择其中一个字段,选择“空白”和标题内容。

11、然后将筛选出来的无用行鼠标右键删除,再删除A列整列即可,完成效果如下图:。

3.请问:excel一个工作簿中有多个工作表怎么合并数据?

因为你每天都会有一个表,表的总数无法确定,所以你应该把每天的表都依次复制到一个表中,并给此表起名为 汇总 此表A列放序号,B列放名称,C列放件数,D列放金额。

然后再新建一个表起名 目录 把各表中的“名称”内容如:汕头奥马 、成都精益等等,不重复的输入到“目录”表的A列,从A1格开始,每个占一格,依次向下输入。 在“目录”表的B1格输入公式,得到件数合计: =SUMIF(汇总!$B$1:$B$1000,目录!A1,汇总!$C$1:$C$1000) 在“目录”表的C1格输入公式,得到金额合计: =SUMIF(汇总!$B$1:$B$1000,目录!A1,汇总!$D$1:$D$1000) 试试吧,如果有问题可以H!我。

4.Excel 怎么样合并多张表的内容

Sub 合并工作表()

For i = 2 To Sheets.Count

Sheets(i).UsedRange.Copy Destination:=Sheets("汇总").Range("A" & Sheets("汇总").UsedRange.Rows.Count + 1)

Next

End Sub

ALT+F11,打开代码窗口.粘贴代码

回到工作表中.按ALT+F8,运行这段代码就可以了

保证第一个工作表名称为 汇总

合并后如果有多余的标题行,自己筛选来删除就OK了

5.excel 多表合并

第一 新建一个文件夹把这51个excel文件放在这个文件夹里 然后在这个文件夹里再新弄一个空表 第二打开这个空表 在sheet1那个标签那里右键 查看代码 把代码复制进去第三 点一下上面的运行 运行子程序 代码如下 (使用本方法前提,表里没有合并过的单元格,第二第1列必须有数据不能空白还不会可以 发我邮箱给你看看,)Sub 合并当前目录下所有工作簿的全部工作表()Dim MyPath, MyName, AWbNameDim Wb As Workbook, WbN As StringDim G As LongDim Num As LongDim BOX As StringApplication.ScreenUpdating = FalseMyPath = ActiveWorkbook.PathMyName = Dir(MyPath & "\" & "*.xls")AWbName = ActiveWorkbook.NameNum = 0Do While MyName <> ""If MyName <> AWbName ThenSet Wb = Workbooks.Open(MyPath & "\" & MyName)Num = Num + 1With Workbooks(1).ActiveSheet.Cells(.Range("B65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)For G = 1 To Sheets.CountWb.Sheets(G).UsedRange.Copy .Cells(.Range("B65536").End(xlUp).Row + 1, 1)NextWbN = WbN & Chr(13) & Wb.NameWb.Close FalseEnd WithEnd IfMyName = DirLoopRange("B1").SelectApplication.ScreenUpdating = TrueMsgBox "共合并了" & Num & "个工作薄下的全部工作表。

如下:" & Chr(13) & WbN, vbInformation, "提示"End Sub。

相关信息


电脑版

【免责声明】本站信息来自网友投稿及网络整理,内容仅供参考,如果有错误请反馈给我们及时更正,对文中内容的真实性和完整性本站不提供任何保证,不承但任何责任。
版权所有:学窍知识网 Copyright © 2011-2024 www.at317.com All Rights Reserved .