Método ShapeRange.Distribute (Excel)
Distribuye horizontal o verticalmente las formas del rango de formas especificado.
Sintaxis
expresión. Distribute (DistributeCmd, RelativeTo)
Expresión Variable que representa un objeto ShapeRange .
Parameters
Nombre | Obligatorio/opcional | Tipo de datos | Descripción |
---|---|---|---|
DistributeCmd | Obligatorio | MsoDistributeCmd | Especifica si las formas del intervalo se van a distribuir vertical u horizontalmente. |
RelativeTo | Obligatorio | MsoTriState | No se utiliza en Microsoft Excel. Debe ser False. |
Ejemplo:
En este ejemplo se define un rango de formas que contiene todas las Autoformas de myDocument y, a continuación, se distribuyen horizontalmente las formas de este rango. La forma situada más a la izquierda mantiene su posición.
Set myDocument = Worksheets(1)
With myDocument.Shapes
numShapes = .Count
If numShapes > 1 Then
numAutoShapes = 0
ReDim autoShpArray(1 To numShapes)
For i = 1 To numShapes
If .Item(i).Type = msoAutoShape Then
numAutoShapes = numAutoShapes + 1
autoShpArray(numAutoShapes) = .Item(i).Name
End If
Next
If numAutoShapes > 1 Then
ReDim Preserve autoShpArray(1 To numAutoShapes)
Set asRange = .Range(autoShpArray)
asRange.Distribute msoDistributeHorizontally, False
End If
End If
End With
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.