永发信息网

关于excel表多工作簿合并问题

答案:2  悬赏:80  手机版
解决时间 2021-03-04 15:49
  • 提问者网友:佞臣
  • 2021-03-03 22:31
请问如下语句中如何增加条件 不包含工作簿 aabc 工作簿 参与合并

Sub 按钮1_单击()
Dim myPath$, myFile$, AK As Workbook, aRow%, tRow%, i As Integer
Application.ScreenUpdating = False '冻结屏幕,以防屏幕抖动
myPath = ThisWorkbook.Path & "\分表\" '把文件路径定义给变量

myFile = Dir(myPath & "*.xls") '依次找寻指定路径中的*.xls文件
Do While myFile <> "" '当指定路径中有文件时进行循环
If myFile <> ThisWorkbook.Name Then
Set AK = Workbooks.Open(myPath & myFile) '打开符合要求的文件
For i = 1 To AK.Sheets.Count
aRow = AK.Sheets(i).Range("a65536").End(xlUp).Row
tRow = ThisWorkbook.Sheets(1).Range("a65536").End(xlUp).Row + 1
'AK.Sheets(i).Select
AK.Sheets(i).Range("a8:k" & aRow).Copy ThisWorkbook.Sheets(1).Range("a" & tRow)
Next
Workbooks(myFile).Close False '关闭源工作簿,并不作修改
End If
myFile = Dir '找寻下一个*.xls文件
Loop

Application.ScreenUpdating = True '冻结屏幕,此类语句一般成对使用
MsgBox "汇总完成,请查看!", 64, "提示"

End Sub
最佳答案
  • 五星知识达人网友:孤独入客枕
  • 2021-03-03 23:10
If myFile <> ThisWorkbook.Name Or myfile <> "aabc.xls" Then

用Or连接两个判断条件。
全部回答
  • 1楼网友:掌灯师
  • 2021-03-03 23:58
可以用vba 打开1.xls后按住alt,依次按f11,i,m 粘贴代码后按f5即可完成合并过程 ps:如果a列不是必填字段,注意修改代码中相应位置. sub 汇总数据() application.screenupdating = false p = thisworkbook.path & "\" f = dir(p & "*.xls") m = thisworkbook.name do while f <> "" and f <> m workbooks.open p & f activeworkbook.sheets(1).usedrange.copy workbooks(m).sheets(1).[a65536].end(xlup).offset(1, 0) '假设a列为必填字段 activeworkbook.saved = true activewindow.close f = dir loop application.screenupdating = true end sub
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯