
excel
第一,把所有表格都扔进一个新建的文件夹里, 第二,在这个文件夹里再新建一个
excel文件, 打开它 → 右键点击左下角的sheet1 → 选择查看代码 → 把下面这段代码复制进去 → 然后点运行 → 选运行子过程就行 等一会儿就搞定了,不过你这些表格不能有合并单元格,有的话程序会崩,还有就是每个表的A列必须有内容 合并完以后,把B列那些空行用筛选删掉就干净了 代码如下:
VBASub 合并当前目录下所有工作簿的全部工作表()Dim MyPath, MyName, AWbNameDim Wb As Workbook, WbN As StringDim G As LongDim Num As LongDim BOX As Strin
GAPplication.ScreenUpdating = FalseMyPath = ActiveWorkbook.PathMyName = Dir(MyPath & & *.xls)AWbName = ThisWorkbook.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) & Workbooks.NameWb.Close FalseEnd WithEnd IfMyName = DirLoopRange(B1).SelectApplication.ScreenUpdating = TrueMsgBox 共合并了 & Num & 个工作薄下的全部工作表。如下: & Chr(13) & WbN, vbInformation, 提示End Sub