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.