Adjustments Members

Use the Adjustments object to change the adjustment handle values on an autoshape. Use the Shape object’s Adjustments property to get a reference to this object. The Adjustments object has the following members:

Application
Count
Creator
Item
Parent

Adjustment handles change one or more aspects of an autoshape. Usually, they control the relative proportions of parts of the shape, such as the length of an arrowhead or the width of the arrow body.

The Adjustments object is a collection of numeric values that correspond to the shapes adjustment handle settings. A shape with a single adjustment handle may have multiple Adjustments items, each of which corresponds to dragging the adjustment handle in a different direction.

For example, the following code draws two arrow autoshapes, then changes the adjustment handles on the second shape:

Sub UseAdjustments( )
    Dim ws As Worksheet, s As Shape
    Set ws = ActiveSheet
    ' Draw an arrow.
    Set s = ws.Shapes.AddShape(msoShapeRightArrow, 20, 120, 100, 20)
    ' Copy the arrow
    Set s = s.Duplicate
    ' Show settings.
    Debug.Print s.Adjustments(1), s.Adjustments(2)
    ' Make adjustments
    s.Adjustments(1) = s.Adjustments(1) + 0.1 ' Shorten arrow head.
    s.Adjustments(2) = s.Adjustments(2) + 0.1  ' Narrow body.
End Sub

Get Programming Excel with VBA and .NET now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.