EXCEL 文件过大打开卡顿的解决方法

常规做法(非常规做法可以直接拉到文末,就一个字“快”)

因为我原始处理的文件有不能公开的数据,所以我单建了一个空表来演示,空表里添加了一些空白窗体,我原始文件使用代码方法和非常规做法两种方式都解决了问题,并且检查了数据没有丢失。
常规做法1、优点:操作简单;缺点:如果对象很多,会非常慢,我需要处理的文档因为长时间无响应,放弃这个做法了

打开文件,按F5,打开定位,选择“定位条件”
在这里插入图片描述
选择“对象”,确定。
在这里插入图片描述
之前隐藏的对象就显示出来了,按DEL键,删除,搞定收工。
在这里插入图片描述

常规做法2 优缺点跟第一个方法一样,我也在长时间的无响应之后放弃了

选择“页面布局”,选择“选择窗格”,再选择“全部显示”,这些窗格也都显示出来了,在右侧选择窗体名称,可以一个一个删除。也可以选择一个窗体名称后,CTRL + A全选,按DEL删除

在这里插入图片描述

常规做法3 优点:跟我的非常规做法比起来还是EXCEL内部操作,比较安全;缺点一个是慢,期间很长时间无响应,不过只要代码跑开了就等就好了,我是多个表都有问题,所以跑的第二个代码,成功解决问题了。

VBA解决,这个需要一点基础
a) 只有一个sheet有内容,很简单就一句代码

Sub main()
Activesheet.DrawingObjects.Delete
end sub

b) 需要删除所有工作表中的对象,也很简单,加个循环

Sub Test()
    Dim Sht As Worksheet
    For Each Sht In Sheets
        Sht.DrawingObjects.Delete
    Next
End Sub

简单说一下EXCEL 跑VBA代码
打开文件后,按Alt + F11,跳出VBA的调试界面,按F7打开代码窗口,粘贴代码进去,按F5跑代码就好了

重点来了,非常规做法,我是在跑代码的时候实在无聊,想到EXCEL2007之后版本的文件其实是一个压缩文件,就从文件结构想了一个歪招,事实证明可行,优点是无需打开出问题的EXCEL文档(出了问题的EXCEL文档打开就需要很久,非常的磨人),处理起来非常快!缺点是等于用外力拆解了原文件,存在未知风险,一定要备份再搞

把出问题的EXCEL文档备份一份,然后选定要修改的文件名按F2把文件扩展名“xlsx”改为zip,会提示“如果改变文件的扩展名,可能会导致文件不可用。确实要修改吗?”当然选确定
如果看不到文件扩展名可以打开资源管理器(win + E),点“查看”,点“选项”,在弹出的窗口选“查看”,下拉找到“隐藏已知文件类型的扩展名”取消勾选

在这里插入图片描述
然后右键 打开方式 选择“资源管理器”。重点!用资源管理器打开的好处是处理完不用再压缩了,解压处理完再压缩有可能操作失误连文件夹一起压缩,就会出问题

在这里插入图片描述
点开xl文件夹
在这里插入图片描述
看到这个“drawings”文件夹没?这个就是我们要解决的问题,直接右键删除,如果excel文档有图片这里还会有一个media文件夹,视情况删除
在这里插入图片描述
关闭资源管理器(直接返回上层目录的话资源管理器还工作在压缩文件的模式),再找到我们这个zip文件,按F2,把文件扩展名改回xlsx。打开工作簿,Excel提示我们“发现工作簿中的部分内容有问题……巴拉巴拉”选“是”
在这里插入图片描述

然后看到下面这个对话框,成功了!点“关闭”
在这里插入图片描述
恭喜你,搞定了,看,所有的窗格都已经删除了,记得保存文件哦

在这里插入图片描述

这种非常规做法其实相当于破坏了(删除了我们不需要的窗体)文件,然后通过EXCEL的自动修复达到了我们的目的,如果您的EXCEL文档里面有需要保留的窗体、按钮之类的,就只能用常规做法慢慢来了,跑代码的方法也可以实现,具体代码可以自己百度,也不难。

  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值