在Excel中将工作表复制到新工作簿会在再次打开新文件时产生错误

时间:2017-10-12 21:46:51

标签: excel vba

我写了一个

的子
  • 将整张表复制到新工作簿
  • 过滤列中的特定值
  • 删除所有包含其他值的行
  • 使用特定路径保存新工作簿
  • 关闭新工作簿

实际上很简单,但是当我再次打开创建的文件时,我收到一条错误消息:

  

我们发现'FileName.xlsx'中的某些内容存在问题。您想要我们吗?   试图尽可能多地恢复?如果您相信这个来源   工作簿,单击是

如果我单击是,它会打开文件,我可以再次保存并关闭它。然后错误就消失了。但我将该文件发送给合作伙伴,因此我不希望他们在打开文件时收到此类错误消息。 我在不同的计算机上试过它,它总是一样的。

如果我在手动执行所有步骤时重新创建错误,则表明过滤值似乎是问题所在。如果我过滤值,删除一些,删除过滤器(再次显示所有数据),然后保存文件并关闭它,当我重新打开文件时会出现错误。

我尝试了很多步骤(维修办公室,重新安装办公室等),但没有一个帮助过。

任何想法,导致此错误的原因是什么?

1 个答案:

答案 0 :(得分:0)

不知道。这是一个难以帮助的人。系统性损坏错误是不寻常的,但可能是由许多事情引起的。我有一个工作簿,在从另一个工作簿复制图像后,每次保存都会损坏。

至少在系统化的情况下,您可以注释掉所有代码(保存部分除外)并逐步取消注释代码,直到找出导致问题的确切步骤,然后尝试不同的方法来尝试解决问题。

如果所有其他方法都失败了,那么在保存文件后,您可以尝试自动执行修复过程。保存文件后,重新打开它,但在Open方法中,设置CorruptLoad:= xlRepairFile以强制修复文件,然后重新保存。