
excel
VBASub 合并当前目录下所有工作簿的全部工作表()Dim MyPath, MyName As StringDim Wb As Workbook, WbN As StringDim G As LongDim Num As LongDim BOX As StrinGAPplication.ScreenUpdating = FalseMyPath = ActiveWorkbook.PathMyName = Dir(MyPath & & *.xls)Do While MyName If MyName Then Set Wb = Workbooks.Open(MyPath & & MyName)Num = Num + 1With ActiveWorkbook.Sheets(1).Activate.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) & MyNameWb.Close FalseEnd WithMyName = DirLoopRange("B1").SelectApplication.ScreenUpdating = TrueMsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & C见流沉hr(13) & WbN, vbInformation, "提示"End Sub接着,在同一文件夹中创建一个名为 “合并结果”的 文件夹,并将之前打开的 excel 文件拷贝至此文件夹内。运行已经修改过的宏计算代码,等待大约10秒钟让其完全运行完毕。当宏计算完成后,会弹出一个提示窗口显示合并结果。如果有5000多行数据,则说明合并成功。Copyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号