我该如何删除Excel 2007工作表中的所有图片?提供一个可行的代码示例会更好。
最简单的方式:
Activesheet.Pictures.Delete
或者Activesheet.Shapes.Delete
根据您的图片类型,删除所有图片的效率比逐个迭代(循环)和删除它们更高。
Dim shape As Excel.shape
For Each shape In ActiveSheet.Shapes
shape.Delete
Next
activesheet.pictures.delete
或循环并添加条件:如果形状类型为"msopicture"、"msolinkedpicture"或"msoEmbeddedOLEObject",则删除该形状。 - Patrick Lepelletier要删除所有图片或其他形状,您可以遍历它们并检查类型:
Dim shape As Excel.shape
For Each shape In ActiveSheet.Shapes
Select Case shape.Type
Case msoPicture, msoMedia, msoShapeTypeMixed, msoOLEControlObject, msoAutoShape
shape.Delete
Case Else
'Do nothing
End Select
Next
Activesheet.Shapes.Delete
会抛出一个错误(对象不支持该方法)。 - Patrick Lepelletier