Selection.Move Method (Visio)

Office 2013 and later
GitHub-Mark-64px

Contribute to this content

Use GitHub to suggest and submit changes. See our guidelines for contributing to VBA documentation.

Moves a selection a specified distance.

expression .Move(dx, dy, UnitsNameOrCode)

expression A variable that represents a Selection object.

Parameters

Name

Required/Optional

Data Type

Description

dx

Required

Double

Specifies the amount to move in the x-direction.

dy

Required

Double

Specifies the amount to move in the y-direction.

UnitsNameOrCode

Optional

Variant

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

Return Value

Nothing

You can specify UnitsNameOrCode as an integer (a member of VisUnitCodes) or a string value such as "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 Move method to move a selection by a specified amount.

Public Sub Move_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.Move 2, 2 
 
End Sub 

Show: