Método Shapes.Range (Word)

Devuelve un objeto ShapeRange que representa las formas dentro de un intervalo.

Sintaxis

expresión. Intervalo (índice)

expresión requerida. Variable que representa un objeto Shapes .

Parameters

Nombre Obligatorio/opcional Tipo de datos Descripción
Index Obligatorio Variant Indica qué formas se incluirán en el intervalo especificado. Puede ser un entero que especifica el número de índice de una forma dentro de la colección Shapes, una cadena que especifica el nombre de una forma o una matriz que contenga números enteros o cadenas.

Valor devuelto

ShapeRange

Comentarios

Un objeto Shape siempre aparece en la misma página que el intervalo al que se fija.

Nota:

[!NOTA] Casi todas las operaciones que se pueden hacer con un objeto Shape también puede hacer con un objeto ShapeRange que contenga una única forma. Algunas operaciones, cuando se realizan en un objeto ShapeRange que contiene varias formas, producen un error.

Ejemplo:

En este ejemplo, se establece en púrpura el color de relleno de primer plano de la primera forma del documento activo.

Sub ShRange() 
 With ActiveDocument.Shapes.Range(1).Fill 
 .ForeColor.RGB = RGB(255, 0, 255) 
 .Visible = msoTrue 
 End With 
End Sub

En este ejemplo, se aplica sombreado a una forma variable del documento activo.

Sub ShpRange2(strShpName As String) 
 ActiveDocument.Shapes.Range(strShpName).Shadow.Type = msoShadow6 
End Sub

Para llamar a la subrutina precedente, escriba el siguiente código en el módulo de códigos estándar.

Sub CallShpRange2() 
 Dim shpArrow As Shape 
 Dim strName As String 
 
 Set shpArrow = ActiveDocument.Shapes.AddShape(Type:=msoShapeLeftArrow, _ 
 Left:=200, Top:=400, Width:=50, Height:=75) 
 
 shpArrow.Name = "myShape" 
 strName = shpArrow.Name 
 ShpRange2 strShpName:=strName 
End Sub

En este ejemplo, se seleccionan las formas uno y tres del documento activo.

Sub SelectShapeRange() 
 ActiveDocument.Shapes.Range(Array(1, 3)).Select 
End Sub

En este ejemplo se seleccionan y se eliminan todas las formas de la primera forma del documento activo. Se supone que la primera forma es un lienzo.

Sub CanvasShapeRange() 
 Dim rngCanvasShapes As Range 
 Set rngCanvasShapes = ActiveDocument.Shapes(1).CanvasItems.Range(1) 
 rngCanvasShapes.Select 
 rngCanvasShapes.Delete 
End Sub

Consulte también

Objeto de la colección de formas

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.