- ·上一篇:excel表格数据图怎么只显示图
- ·下一篇:excel表格怎么样去除自动排序
怎么excel表格合并相同内容
1.怎么把相同的excel文件合并?
1、新建一个文件夹
2、将要合并的表格放到里面
4、新建一个表格
5、用excel打开,右击Sheet1,选择查看代码
将下列代码复制到文本框中:
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
点击运行,一段时间(取决于表格的大小和多少)后,合并完成了
2.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。
3.怎么把两个excel表格合并,并且相同的数据只保留一个,不同的数据都
可以用VBA处理,代码及注释如下:
sub 合并工作表()
for i=1 to 10'处理A列1到10行的数据
if cells(i,"A")<>sheets(2).cells(i,"A") then'如果数据相等不做处理,如果不相等
cells(i,"A")=cells(i,"A")&"-"&sheets(2).cells(i,"A")'工作表1中的A列单元格数据就等于工作表1与工作表2对应单元格数据用”-“连接合并起来
end if
next i
end sub
4.EXCEL 表格 里有两个同样的数据 怎么合并到一起
假设,你2113有两张表,一张是签收表(图1),一张是发5261件表或收件表(图2)
如图2,在发件表(或收件表)的
F2=IF(B2="","",IF(ISERROR(VLOOKUP(B2,签收4102表!A:A,1,0)),"未签收",VLOOKUP(B2,签收表!A:A,1,0)))
其实公式=VLOOKUP(B2,签收表!A:A,1,0) 就可以把单号引用过来,1653只不过如果没有签收的会出现错误值,会专使表格不美观,所以我用IF把错误值给处理掉属了。
