Objeto Shape (Word)

Representa un objeto de la capa de dibujo, como una autoforma, una forma libre, un objeto OLE, un control ActiveX o una imagen. El objeto Shape es miembro de la colección Shapes , que incluye todas las formas del artículo principal de un documento o de todos los encabezados y pies de página de un documento.

Comentarios

Las formas siempre se adjuntan a un intervalo de fijación. Puede colocar la forma en cualquier lugar de la página que contiene el delimitador.

Hay tres objetos que representan formas: la colección Shapes , que representa todas las formas de un documento; el objeto ShapeRange , que representa un subconjunto especificado de las formas de un documento (por ejemplo, un objeto ShapeRange podría representar formas una y cuatro en el documento, o podría representar todas las formas seleccionadas en el documento); y el objeto Shape , que representa una sola forma en un documento. Si desea trabajar con varias formas al mismo tiempo o con formas dentro de la selección, use una colección ShapeRange.

Use Shapes (index), donde index es el nombre o el número de índice, para devolver un único objeto Shape . En el ejemplo siguiente se voltea horizontalmente la forma uno del documento activo.

ActiveDocument.Shapes(1).Flip msoFlipHorizontal

En el ejemplo siguiente se voltea horizontalmente la forma denominada Rectangle 1 en el documento activo.

ActiveDocument.Shapes("Rectangle 1").Flip msoFlipHorizontal

A cada forma se la asigna un nombre predeterminado cuando se crea. Por ejemplo, si agrega tres formas distintas a un documento con los nombres siguientes: Rectángulo 2, Cuadro de texto 3 y Elipse 4. Para asignar a una forma un nombre más descriptivo, establezca la propiedad Name.

Use ShapeRange (index), donde index es el nombre o el número de índice, para devolver un objeto Shape que representa una forma dentro de una selección. En el ejemplo siguiente se establece el relleno de la primera forma de la selección, suponiendo que la selección contiene una forma por lo menos.

Selection.ShapeRange(1).Fill.ForeColor.RGB = RGB(255, 0, 0)

En el siguiente ejemplo, se establece el relleno de todas las formas de la selección, suponiendo que la selección contiene una forma por lo menos.

Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 0, 0)

Para agregar un objeto Shape a la colección de formas del documento especificado y devolver un objeto Shape que represente la forma recién creada, utilice uno de los siguientes métodos de la colección Shapes: AddCallout, AddCurve, AddLabel, AddLine, AddOleControl, AddOleObject, AddPolyline, AddShape, AddTextbox, AddTextEffect o BuildFreeForm. En el siguiente ejemplo, se agrega un rectángulo al documento activo.

ActiveDocument.Shapes.AddShape msoShapeRectangle, 50, 50, 100, 200

Use GroupItems (index), donde index es el nombre de la forma o el número de índice dentro del grupo, para devolver un objeto Shape que representa una sola forma en una forma agrupada.

Utilice el método Group o Regroup para agrupar un intervalo de formas y devolver un único objeto Shape que represente al grupo recién formado. Una vez creado un grupo, puede trabajar con el grupo de la misma manera que con cualquier otra forma.

Todos los objetos Shape se fijan a un intervalo de texto. La forma se fija al principio del primer párrafo que contiene el intervalo de fijación. La forma siempre permanecerá en la misma página que su delimitador.

Para ver el propio delimitador, establezca la propiedad ShowObjectAnchors en True. Las propiedades Top y Left de la forma determinan sus posiciones vertical y horizontal. Las propiedades RelativeHorizontalPosition y RelativeVerticalPosition de la forma determinan si la posición se mide desde el párrafo de fijación, la columna que contiene dicho párrafo, el margen o el borde de la página.

Si la propiedad LockAnchor de la forma está establecida en True, no se puede arrastrar el delimitador desde su posición en la página.

Utilice la propiedad Fill para devolver el objeto FillFormat , que contiene todas las propiedades y métodos para dar formato al relleno de una forma cerrada.

La propiedad Shadow devuelve el objeto ShadowFormat, que se utiliza para aplicar formato a una sombra.

Utilice la propiedad Line para devolver el objeto LineFormat, que contiene las propiedades y métodos para aplicar formato a las líneas y flechas.

La propiedad TextEffect devuelve el objeto TextEffectFormat, que se utiliza para aplicar formato a los objetos WordArt.

La propiedad Callout devuelve el objeto CalloutFormat, que se utiliza para aplicar formato a las llamadas de las líneas.

La propiedad WrapFormat devuelve el objeto WrapFormat, que se utiliza para definir el modo en que el texto se ajustará alrededor de las formas.

La propiedad ThreeD devuelve el objeto ThreeDFormat , que se usa para crear formas 3D.

Use los métodos PickUp y Apply para transferir el formato de una forma a otra.

Utilice el método SetShapesDefaultProperties de un objeto Shape para establecer el formato de la forma predeterminada del documento. Las nuevas formas heredan muchos de sus atributos de la forma predeterminada.

Utilice la propiedad Type para especificar el tipo de forma: forma libre, autoforma, objeto OLE, llamada o imagen vinculada, por ejemplo. Utilice la propiedad AutoShapeType para especificar el tipo de Autoforma: oval, rectángulo o globo, por ejemplo.

Utilice las propiedades Width y Height para especificar el tamaño de la forma.

La propiedad TextFrame devuelve el objeto TextFrame , que contiene todas las propiedades y métodos para adjuntar texto a formas y vincular el texto entre marcos de texto.

Los objetos Shape se fijan a un intervalo de texto, pero son objetos flotantes y pueden situarse en cualquier parte de la página. Los objetos InlineShape se tratan y se colocan como caracteres dentro de una línea de texto. Use el método ConvertToInlineShape y el método ConvertToShape para convertir formas de un tipo a otro. Solo puede convertir imágenes, objetos OLE o controles ActiveX en formas entre líneas.

Métodos

Propiedades

Vea también

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.