清理Excel中的插入图片、文档等对象
专栏:web开发笔记 June 18, 2025, 10:14 a.m. 31 阅读
Excel中的图片删除了,附件删除了,但文档大小没变?

Excel中的图片删除了,附件删除了,但文档大小没变?

这是因为Excel删除嵌入对象后,二进制数据还保留着,并没有真正的删除。Excel本身也没有提供清理工具。经过查阅资料加实践,发现下面的vba代码能够解决问题。

Sub DeleteAllObjects()
    Dim ws As Worksheet
    Dim obj As Object

    For Each ws In ThisWorkbook.Worksheets

        For Each obj In ws.OLEObjects
            obj.Delete
        Next obj

        For Each obj In ws.Shapes
            obj.Delete
        Next obj

    Next ws

End Sub

使用方法如下:
1、把excel另存为启用宏的工作簿(.xlsm)
image.png

2、开发工具 -> Visual Basic,打开vba编写窗口

image.png

3、在VBA Project里,双两击Sheet1,贴入代码

image.png

4、点工具条上的“运行”,运行宏函数

image.png

5、执行成功后,删除这段代码,再另存为普通Excel文件(.xlsx)。这样Excel文件就成功瘦身了。

 

感谢阅读,更多文章点击这里:【专栏:web开发笔记】
最新20篇 开设专栏