
Criei um objeto retângulo com texto dentro de um documento EXCEL e formatei muito ele, se eu quiser mudar repentinamente para o tipo circular (oblíquo), existe uma maneira de fazer isso no EXCEL?
No momento, eu criaria um objeto circular (oblíquo) e depois copiaria o formato do objeto por meio do ícone de cópia de formato. Quanto à dimensão do objeto, bastaria copiá-lo manualmente. Além disso, o texto escrito dentro do objeto também é copiado manualmente. Eu esperava que houvesse uma maneira mais rápida de fazer isso.
Responder1
Você pode fazer isso com macros VBA. Admito que tentei com o Excel 2013, então as coisas podem ser um pouco diferentes em 2010.
Selection.ShapeRange.AutoShapeType = msoShapeOval
Muda a forma selecionada para Oval
Selection.ShapeRange.AutoShapeType = msoShapeRectangle
muda de volta.
Você também pode definir altura, largura, etc. como neste exemplo:
Sub Macro3()
ActiveSheet.Shapes.Range(Array("Oval 3")).Select
Selection.ShapeRange.Height = 53.8582677165
Selection.ShapeRange.ScaleHeight 1.11, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.AutoShapeType = msoShapeOval
End Sub
O acima seleciona uma forma específica. Você poderia fazer com que o VBA encontrasse todas as formas. ActiveSheet.Shapes
retornará um intervalo que você pode percorrer, verificar a corrente AutoShapeType
e alterá-la, se necessário.