Borrado de Imágenes en Selección

Estoy tratando de borrar imágenes de una selección de celdas.

Tengo esta macro muy buena, pero me quita todas las imágenes de la página :

Sub TipoObjetos()
Dim img As Shape
On Error Resume Next
For Each img In ActiveSheet.Shapes
If img.Type = msoPicture Then img.Delete
Next
End Sub

Lo que quiero decir en selección, es que si selecciono un rango de celdas y filas que unas tienen imágenes y otras no, me quiten las imágenes que están dentro de la selección, no de toda la página

2 respuestas

Respuesta
1

Tengo suerte, he conseguido lo que quería.

Con esta macro:

Dim img As Shape

On Error Resume Next

For Each img In ActiveSheet.Shapes

If Not Application.Intersect(img.TopLeftCell, Selection) Is Nothing Then

If img.Type = msoPicture Then img.Delete

End If

Next

Me gusta compartir, lo que logro.

Respuesta
1

Solamente para redondear tu respuesta.

Si la esquina superior izquierda de tus imágenes está dentro del rango seleccionado, entonces la imagen se borra. En el siguiente dibujo, las 3 imágenes azules se borrarían.


Pero si solamente quieres borrar las imágenes que estén completamente dentro del rango seleccionado, entonces podría ser con la siguiente macro, con lo cual, solamente ser borrarían las 2 primeras imágenes azules.

Sub seleccionar()
'Por.DAM
    Set rango = Selection
    For Each img In ActiveSheet.Shapes
        If img.Type = msoPicture Then
            If Not Intersect(img.TopLeftCell, rango) Is Nothing And _
                Not Intersect(img.BottomRightCell, rango) Is Nothing Then
                    img.Delete
            End If
        End If
    Next
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas