Excel VBA将给定的工作表拆分为单独的工作簿,其余所有工作表都应忽略

Excel VBA将给定的工作表拆分为单独的工作簿,其余所有工作表都应忽略,excel,vba,Excel,Vba,你能帮我解决下面的问题吗。 我的工作簿有很多工作表,拆分工作表的名称总是以AB开头*** 下面的代码拆分所有工作表,但我只查看AB***工作表需要通过创建文件夹在同一路径中拆分(示例AB987以AB和一些数字开头) 假设它的其余部分工作正常,下面是如何首先检查名称 Dim ws as Worksheet For Each ws In ThisWorkbook.WorkSheets If Left$(ws.Name, 2) = "AB" Then ' <

你能帮我解决下面的问题吗。 我的工作簿有很多工作表,拆分工作表的名称总是以AB开头*** 下面的代码拆分所有工作表,但我只查看AB***工作表需要通过创建文件夹在同一路径中拆分(示例AB987以AB和一些数字开头)


假设它的其余部分工作正常,下面是如何首先检查名称

  Dim ws as Worksheet
  For Each ws In ThisWorkbook.WorkSheets 
    If Left$(ws.Name, 2) = "AB" Then ' <--- added an IF statement
      ws.Copy 
      Application.ActiveWorkbook.SaveAs Filename:=FPath & "\" & ws.Name & ".xlsx" 
      Application.ActiveWorkbook.Close False 
    End If
  Next 
Dim ws as工作表
对于ThisWorkbook.WorkSheets中的每个ws

如果左$(ws.Name,2)=“AB”,则“其他信息:只有以AB***开头的工作表名称需要拆分为单独的工作簿,其余所有不需要拆分的工作表您可能应该遍历
此工作簿。工作表
不是
此工作簿。工作表
因为
工作表
现在或将来可能包括图表(除非您希望将这些拆分,这通常不太有用)。此外,这将允许您安全地将
Dim ws声明为工作表
。感谢brax提供的编辑帮助…Joffan接受了您的观点您的代码运行良好谢谢brax…非常感谢您的支持
  Dim ws as Worksheet
  For Each ws In ThisWorkbook.WorkSheets 
    If Left$(ws.Name, 2) = "AB" Then ' <--- added an IF statement
      ws.Copy 
      Application.ActiveWorkbook.SaveAs Filename:=FPath & "\" & ws.Name & ".xlsx" 
      Application.ActiveWorkbook.Close False 
    End If
  Next