Páginas

martes, 17 de julio de 2018

Borrar todas las formas de una hoja de Excel con VBA


Desde hace mas de 10 años, trabajo en una empresa que desarrolla herramientas y reportes para empresas centroamericanas y sudamericanas. 

Sin embargo, usualmente estos reportes deben ser exportados a otras hojas de Excel, las cuales no deben tener ningún botón que tiene la herramienta origen.



Para lograr esto, podemos colocar las siguientes lineas:

Sub DeleteAllShapes()

Dim Shp As Shape

For Each Shp In ActiveSheet.Shapes
    Shp.Delete
Next Shp

End Sub

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Para eliminar solo AutoShapes y Cuadros de texto puede usar:


Sub DeleteAllShapes()

Dim Shp As Shape

For Each Shp In ActiveSheet.Shapes
    If Shp.Type = msoAutoShape Or Shp.Type = msoTextBox Then Shp.Delete
Next Shp

End Sub

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Espero que les sirva.

Ing. Enrique Neciosup Morales


No hay comentarios.:

Publicar un comentario