Export (0) Print
Expand All

Selection.Rotate Method (Visio)

Rotates selected shapes either as a group or individually about their pins.

Version Added: Visio 2003

expression .Rotate(Angle, AngleUnitsNameOrCode, BlastGuards, RotationType, PinX, PinY, PinUnitsNameOrCode)

expression A variable that represents a Selection object.

Parameters

Name

Required/Optional

Data Type

Description

Angle

Required

Double

Specifies the angle to rotate the selection. See Remarks for possible values.

AngleUnitsNameOrCode

Optional

Variant

Specifies the units to use for Angle. See Remarks for possible values. The default is degrees.

BlastGuards

Optional

Boolean

True to override formulas in the ShapeSheet of any of the selected shapes to which the GUARD function has been applied; False to leave guarded formulas unchanged. The default is False.

RotationType

Optional

VisRotationTypes

Specifes how the selection is to be rotated. See Remarks for possible values.

PinX

Optional

Double

When RotationType is visRotateSelectionWithPin, specifies the X-position of the pin about which the selection is to be rotated.

PinY

Optional

Double

When RotationType is visRotateSelectionWithPin, specifies the Y-position of the pin about which the selection is to be rotated.

PinUnitsNameOrCode

Optional

Variant

Specifies the units to use for PinX and PinY. See Remarks for possible values. The default is inches.

Return Value

Nothing

The following possible values for RotationType are declared in VisRotationTypes in the Visio type library.

Constant

Value

Description

visRotateSelectionWithPin

1

Rotates the selection around a pin.

visRotateSelection

0

Rotates the selection relative to the center of the selection.

visRotateShapes

2

Rotates the selected shapes around their pins relative to their current angle.

Passing True for the optional BlastGuards argument overrides formulas in the ShapeSheet of any of the selected shapes to which the GUARD function has been applied.

The default value for RotationType is visRotateSelection .

You can specify AngleUnitsNameOrCode or PinUnitsNameOrCode as an integer (a member of VisUnitCodes) or a string value such as "radians" or "inches". If the string is invalid or the unit code is inappropriate (nontextual), an error is generated.

For a complete list of valid unit strings along with corresponding Automation constants (integer values), see About units of measure.

This Microsoft Visual Basic for Applications (VBA) macro shows how to use the Rotate method to rotate a selection 45 degrees relative to the center of the selection.

Public Sub Rotate_Example() 
 
 Dim vsoShape1 As Visio.Shape 
 Dim vsoShape2 As Visio.Shape 
 
 Set vsoShape1 = Application.ActiveWindow.Page.DrawRectangle(1, 9, 3, 7) 
 Set vsoShape2 = Application.ActiveWindow.Page.DrawRectangle(3, 6, 5, 5) 
 
 ActiveWindow.DeselectAll 
 
 ActiveWindow.Select vsoShape1, visSelect 
 ActiveWindow.Select vsoShape2, visSelect 
 
 Application.ActiveWindow.Selection.Rotate 45, visDegrees 
 
End Sub 

Show:
© 2014 Microsoft