寒窗轩,寒川的个人网络博客,记录互联网事,学习网络编程、分享工作经验、人生感悟,包括但不限于程序代码、数据库、Office办公、随笔等内容。

Excel文件内容很少,但文件很大,打开很慢、很卡怎么办?

在用Office软件Excel时,经常遇到这样一个问题,明明Excel文件中没几行数据,但整个Excel文件大小达数MB,甚至是几十MB大小,Excel打开相当吃力,完全无法操作。有没有办法解决Excel文件内容很少,但文件很大,打开很慢、很卡这一怪象呢?

以前遇到过这样的问题,今天又遇到了,一个就一个小表的Excel文件居然有2.4MB,打开非常缓慢,输入几个字卡得十分严重。好在之前已经有解决方案,废话不多说,直接方法。

在Excel工具栏中依次点开“开发工具”、“查看源代码”,如下图:

Excel开发工具

什么?你的Excel没有这个功能?好吧,功能肯定是有的,只是你没打开而已。自行百度打开方式,或者查看《Excel表格中没有开发者工具?怎么办?》


下面,在开发工具中输入如下代码:

Sub test()
Dim count
Dim pic '图片13
Dim button '按钮8
Dim txtbox '文本框17
Dim comm '批注4
Dim other '其他未知
Dim msg '提示消息
Dim delpic
count = 0
pic = 0
button = 0
txtbox = 0
comm = 0
other = 0
respons = MsgBox("是否要清理表格中的图片,请谨慎操作!" & Chr(10) & _
"点击'是'清理图片,点击'否'跳过!", vbYesNo, "警告")
If respons = vbYes Then
delpic = True
Else
delpic = False
End If
For i = 1 To Sheets.count
For Each tb In Sheets(i).Shapes
If tb.Type = 13 Then
pic = pic + 1
If delpic Then
tb.Delete
End If
ElseIf tb.Type = 8 Then
button = button + 1
tb.Delete
ElseIf tb.Type = 17 Then
txtbox = txtbox + 1
tb.Delete
ElseIf tb.Type = 4 Then
comm = comm + 1
Else
other = other + 1
tb.Delete
End If
Next
'For Each tb In ActiveSheet.Shapes
'tb.Delete
'Next
Next
If delpic Then
count = button + txtbox + pic + other
Else
count = button + txtbox + other
End If
If count > 0 Or comm > 0 Or pic > 0 Then
msg = "共删除了" & count & "个对象;"
If button > 0 Then
msg = msg & Chr(10) & "按钮" & count & "个;"
ElseIf txtbox > 0 Then
msg = msg & Chr(10) & "文本框" & txtbox & "个;"
ElseIf pic > 0 And delpic Then
msg = msg & Chr(10) & "图片" & pic & "个;"
ElseIf other > 0 Then
msg = msg & Chr(10) & "未知对象" & other & "个;"
End If
If comm > 0 Then
msg = msg & Chr(10) & "有" & comm & "个批注没有处理;"
End If
If pic > 0 And Not delpic Then
msg = msg & Chr(10) & "有" & pic & "个图片没有处理;"
End If
Else
msg = "没有找到可以清理的对象!"
End If
MsgBox msg
End Sub

再点运行按钮,如下图:

Excel运行宏


经过漫长的等待后,运行完成,删掉输入的代码,保存Excel,看看是不是Excel文件变小了,同时打开也变快了呢?

经上面的一顿操作,其主要作用是删除Excel文件中的隐藏对象,这些隐藏对象,我们肉眼看不到,但非常多,几十万、上百万个都有可能,导致Excel本身很小但占用很大,计算机处理起来困难,这就非常卡了。形成隐藏对象的原因大多是复制粘贴导致的,具体原因本文不作讨论。

OK,问题得以解决。


如果通过上述操作后文件仍旧很大,打开还是很慢?请参看我新发布的处理方法《Excel文件内容很少,但文件很大,打开很慢怎么办?》

Office 2023-07-03 22:24:19 20 1 22008 OfficeExcel
文章写得不错?我是土豪我要在线打赏!
在线打赏

昵称:

验证码:验证码

评论:

文章分类
系统
程序
数据
Office
随笔
热门文章
请不要奇怪,为什么最近博客的文章是几年前的内容
Excel动态引用各表格指定单元格数据
开篇第一章
ubuntu24.04无法安装向日葵,提示依赖libgconf-2-4怎么办?
如何利用python修改文件的创建时间,修改时间,访问时间
发现一个好网站——春燕文档
ubuntu24.04安装网易云音乐
Ubuntu22.04中用thunar替换默认文件管理器,提示无法启动“TerminalEmulator“的首选应用程序
MySQL如何按每个分类查询10条数据,即MySQL如何每个分类查询10条数据
python读取旧的Excel文件的数据到新的Excel表中
文章推荐
免责声明
关于博主
开篇第一章
随机推荐
简单的php验证码验证程序
随机三位数相加减的php验证码程序
如何利用python修改文件的创建时间,修改时间,访问时间
搬校区了
毕业感慨
Excel文件内容很少,但文件很大,打开很慢、很卡怎么办?
python读取旧的Excel文件的数据到新的Excel表中
写点什么呢?
phpmyadmin批量删除msql指定前缀表名的数据表
Google will say no to China because of hackers attack gmail?
友情连接
春燕网络
谢润的博客