ScaleHeight Method

Microsoft Excel Visual Basic

expression.ScaleHeight(Factor, RelativeToOriginalSize, Scale)

expression    Required. An expression that returns one of the objects in the Applies To list.

Factor   Required Single. Specifies the ratio between the height of the shape after you resize it and the current or original height. For example, to make a rectangle 50 percent larger, specify 1.5 for this argument.

RelativeToOriginalSize   Required MsoTriState. msoTrue to scale the shape relative to its original size. msoFalse to scale it relative to its current size. You can specify msoTrue for this argument only if the specified shape is a picture or an OLE object.

MsoTriState can be one of these MsoTriState constants.
msoCTrue Does not apply to this property.
msoFalse Scale the shape relative to its current size.
msoTriStateMixed Does not apply to this property.
msoTriStateToggle Does not apply to this property.
msoTrue Scale the shape relative to its original size.

Scale   Optional MsoScaleFrom. Specifies which part of the shape retains its position when the shape is scaled.

MsoScaleFrom can be one of these MsoScaleFrom constants.
msoScaleFromBottomRight
msoScaleFromMiddle
msomsoScaleFromTopLeft default

Example

This example scales all pictures and OLE objects on myDocument to 175 percent of their original height and width, and it scales all other shapes to 175 percent of their current height and width.

Set myDocument = Worksheets(1)
For Each s In myDocument.Shapes
    Select Case s.Type
    Case msoEmbeddedOLEObject, _
            msoLinkedOLEObject, _
            msoOLEControlObject, _
            msoLinkedPicture, msoPicture
        s.ScaleHeight 1.75, msoTrue
        s.ScaleWidth 1.75, msoTrue
    Case Else
        s.ScaleHeight 1.75, msoFalse
        s.ScaleWidth 1.75, msoFalse
    End Select
Next