ShapeRange.AutoShapeType property (Excel)

Returns or sets the shape type for the specified Shape or ShapeRange object, which must represent an AutoShape other than a line, freeform drawing, or connector. Read/write MsoAutoShapeType.



expression A variable that represents a ShapeRange object.


When you change the type of a shape, the shape retains its size, color, and other attributes.

Use the Type property of the ConnectorFormat object to set or return the connector type.


This example replaces all 16-point stars with 32-point stars in myDocument.

Set myDocument = Worksheets(1) 
For Each s In myDocument.Shapes 
    If s.AutoShapeType = msoShape16pointStar Then 
        s.AutoShapeType = msoShape32pointStar 
    End If 

Support and feedback

Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.