Shape.Offset Method (Visio)

Offsets a shape a specified amount.


expression. Offset( _Distance_ )

expression A variable that represents a Shape object.


Name Required/Optional Data type Description
Distance Required Double Specifies the distance to offset the shape.

Return value



Calling the Offset method is equivalent to clicking Offset in the Microsoft Visio user interface (click Operations in the Shape Design group on the Developer tab).

For a specified line or curve, the offset is implemented as a pair of lines or curves that are equidistant from the original line or curve. Offset shapes inherit line patterns from the original shapes. They do not inherit any fill patterns or text from the original shapes.


This Microsoft Visual Basic for Applications (VBA) macro shows how to use the Offset method to offset a line shape by a specified amount.

Public Sub Offset_Example() 
 Dim vsoShape As Visio.Shape 
 Set vsoShape = Application.ActiveWindow.Page.DrawLine(3, 3, 6, 6) 
 ActiveWindow.Select vsoShape, visSelect 
End Sub