Excel2007 运行时错误'1004' 方法'copy'作用于对象'worksheet'时失败

平时工作一直使用PrivateSub分拆工作表()DimshtAsWorksheetDimMyBookAsWorkbookSetMyBook=ActiveWorkbook... 平时工作一直使用

Private Sub 分拆工作表()
Dim sht As Worksheet
Dim MyBook As Workbook
Set MyBook = ActiveWorkbook
For Each sht In MyBook.Sheets
sht.Copy
ActiveWorkbook.SaveAs Filename:=MyBook.Path & "\" & sht.Name, FileFormat:=xlNormal '将工作簿另存为EXCEL默认格式
ActiveWorkbook.Close
Next
MsgBox "文件已经被分拆完毕!"
End Sub

这个宏来拆分一个工作表内多个工作薄,分成一个个新的个工作表,好做账单发给公司。
今天使用,分到第五个工作簿提示这个错误

就终止了,请问是什么原因呢?
其实本人并不懂宏…只是想工作方便百度发现个这个方法…现在用得不顺了,希望能处理
不知哪位大神可以帮忙解决问题~在此谢过~~~
展开
 我来答
绛雪先生
2017-10-30
知道答主
回答量:2
采纳率:0%
帮助的人:1873
展开全部
有可能是工作簿内有隐藏的sheet没有显示。
我用excel2016,用同样的代码拆表,在VB窗口左边发现有在表中看不到的sheet。
解决办法:右键中任意表单——显示隐藏的表。去掉不需要的表。
搞定。
我拆好几十个表都OK的。
眯住眼串针
科技发烧友

2015-08-04 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:1.1万
采纳率:58%
帮助的人:3070万
展开全部
代码没问题啊

用EXCEL2003正常拆分同一工作簿下的6个工作表为6个单独的工作簿
追问
我之前10来个都可以分呢
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式