下面的代码从Excel电子表格中删除所有图片。它运作良好,但我只想删除一些选定的图片,有人可以给我一些制作方法的想法。
我当前拥有的代码是:
Sub ClearPics(): Rem Erase All
Sheets("PICTURES").Select
Dim WS As Shape
For Each WS In ActiveSheet.Shapes
WS.Delete
Next
End Sub
答案 0 :(得分:2)
关于您的评论“ 我正在谈论的SpreadSheet通常包含约30张图像(图片),但还有两个我不想删除的Bottons,我不知道该如何区分(原文如此) them ”。
您可以检查Shape.Type
。另请参见MsoShapeType Enumeration。
如果您的按钮是表单控件(msoFormControl
)或ActiveXControl(msoOLEControlObject
),则可以像这样跳过这些类型。
Sub ClearPics()
Dim shp As Shape
For Each shp In Worksheets("PICTURES").Shapes
If shp.Type <> msoFormControl And shp.Type <> msoOLEControlObject Then
shp.Delete
End If
Next shp
End Sub