×

卡慢 方框 透明 对象 删除

批量删除所有工作表里的大量透明方框

鹭岛小千 鹭岛小千 发表于2021-07-26 20:21:58 浏览61 评论0

抢沙发发表评论

【问题描述】如何批量删除所有工作表里的大量透明方框呢?

同事给了一个仅仅5.8MB的Excel文件,但是打开和操作都异常卡慢,甚至显示“未响应”(图1、图2),经分析,是因为多个工作表里均含有大量透明方框,多则十几万个。如何批量删除图3中以Picture开头的所有透明方框对象(图3)呢?

28-1.png

28-2.png

28-3.png


【小千解答】遍历每一张工作表,遍历每一个对象,若对象名称以Picture开头则删除。单元格批注也属于对象,但是通常都是有用的,需要保留,不能删除。代码如下:

Sub xqoffice()
    Dim wks As Worksheet
    Dim i as Long
    For Each wks In ActiveWorkbook.Worksheets
        With wks
            For i = .Shapes.Count To 1 Step -1
                If .Shapes(i).Name Like "Picture*" Then
                    .Shapes(i).Delete
                End If
            Next i
        End With
    Next wks
End Sub


打赏码.png


群贤毕至

访客