概述:
打算将工作簿拆分多个工作表,抛出异常
原因是这个工作簿中有隐藏的工作表,对于Copy操作,它是不能复制隐藏的工作表的,但是Worksheets是所有工作表的集合(自然有隐藏工作表)
最后的解决办法就是取消隐藏所有工作表,或者进行判断如果是隐藏工作表就过滤掉
if sht.Visible = True then
执行复制动作
End if
Sub saveToFile()'把各个工作表以单独的工作簿文件保存在本工作簿所在文件夹下的“班级成绩表”文件夹中Application.ScreenUpdating = False '取消屏幕更新Dim folder As Stringfolder = ThisWorkbook.Path & "\班级成绩表"'如果文件夹不存在,新建文件夹If Len(Dir(folder, vbDirectory)) = 0 Then MkDir folderDim sht As WorksheetFor Each sht In WorksheetsIf sht.Visible = True Thensht.CopyActiveWorkbook.SaveAs folder & "\" & sht.Name & ".xls"ActiveWorkbook.CloseEnd IfNextApplication.ScreenUpdating = True '开启屏幕更新End Sub