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

excel如何把重复的信息合并

2025-12-09 09:13:48


1.EXCEl~如何将多个相同内容(表格大框同)的文档,合并到同一个文

如果是在一个工作簿内的多个表格,合并:一个工作薄中多个工作表合并代码:在EXCEL中,到合并表里打开宏,将下列代码进行粘贴并保存。

然后返回你需要合并的工作表中。或按 alt + f11,双击工程资源管理器里面的合并表的SHEET,在右侧的代码区粘贴如下代码。

运行此宏,就合并了。Sub 合并sheets() n = 12 '源表个数,根据需要修改! nstart = 9 '每个单表数据的起始行数,根据需要修改! k = nstart '目标表的行标 For i = 1 To n irow = nstart '行标 While Sheets(i).Cells(irow + 1, 1) <> "" '后面个1以第1列数据为结束标示,确定源表的行数,根据需要修改! irow = irow + 1 Wend Sheets(i).Rows(nstart & ":" & irow).Copy '复制源数据行 Sheets(n + 1).Activate Sheets(n + 1).Cells(k, 1).Select ActiveSheet.Paste '粘贴数据 k = k + irow - nstart + 1 Next i End Sub 如果是多个工作簿合并:新建一个工作表,命名后保存到和与合并的N个文件同一个文件文件夹,按 alt + f11,双击工程资源管理器里面的sheet1(sheet1),在右侧的代码区粘贴如下代码。

运行。等候一会就OK了。

宏1:合并当前目录下所有工作簿的全部工作表到当前工作表 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 宏2:多个文件表合到一个文件表的多个SHEET中 Sub CombineWorkbooks() Dim FilesToOpen, ft Dim x As Integer Application.ScreenUpdating = False On Error GoTo errhandler FilesToOpen = Application.GetOpenFilename _ (FileFilter:="Micrsofe Excel文件(*.xls), *.xls", _ MultiSelect:=True, Title:="要合并的文件") If TypeName(FilesToOpen) = "boolean" Then MsgBox "没有选定文件" 'GoTo errhandler End If x = 1 While x <= UBound(FilesToOpen) Set wk = Workbooks.Open(Filename:=FilesToOpen(x)) wk.Sheets().Move after:=ThisWorkbook.Sheets _ (ThisWorkbook.Sheets.Count) x = x + 1 Wend MsgBox "合并成功完成!" errhandler: 'MsgBox Err.Description 'Resume errhandler End Sub。

相关信息


电脑版

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