Удаление изображений с помощью Excel VBA
Как удалить все изображения на листе Excel 2007? Пример рабочего кода был бы отличным.
3 ответов
самый простой способ:
Activesheet.Pictures.Delete
или
Activesheet.Shapes.Delete
в зависимости от типа объекта свой рисунок.
удаляет все изображения с большей эффективностью, а затем повторяет (цикл) и удаляет их один за другим.
чтобы удалить все изображения или другие фигуры, вы можете повторить их все и проверить тип:
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
в моем случае этот код был полезен, потому что мой лист был полон прозрачных форм типа msoAutoShape, которые я думал, были изображениями. Так, Параметру Activesheet.Картины.Удалить не работает.
вы можете найти все типы фигур по этой ссылке:http://msdn.microsoft.com/en-us/library/aa432678 (v=офис.12).aspx