如何根据工作表名称将工作簿拆分为单独的文件



我想将图纸保存为单独的文件,但仅适用于以AB***开头的图纸名称。

下面的代码适用于所有图纸名称。

Sub SplitEachWorksheet() 
Dim FPath As String 
FPath = Application.ActiveWorkbook.Path 
Application.ScreenUpdating = False 
Application.DisplayAlerts = False 
For Each ws In ThisWorkbook.Sheets 
ws.Copy 
Application.ActiveWorkbook.SaveAs Filename:=FPath & "" & ws.Name & ".xlsx" 
Application.ActiveWorkbook.Close False 
Next 
Application.DisplayAlerts = True 
Application.ScreenUpdating = True 
End Sub 

假设其余部分都能工作,下面是如何首先检查名称。

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 

最新更新