Compartilhar via


Objeto de forma (PowerPoint)

Representa um objeto na camada de desenho, como uma AutoForma, uma forma livre, um objeto OLE ou uma figura.

Comentários

Observação

Existem três objetos que representam formas: a coleção Formas , que representa todas as formas num documento; a coleção ShapeRange , que representa um subconjunto especificado das formas num documento (por exemplo, um objeto ShapeRange pode representar as formas um e quatro no documento ou pode representar todas as formas selecionadas no documento); e o objeto Forma , que representa uma única forma num documento. Se você deseja trabalhar com várias formas ao mesmo tempo ou com formas dentro da seleção, use uma coleção ShapeRange.

Para obter uma descrição geral de como trabalhar com uma única forma ou com mais do que uma forma de cada vez, consulte Trabalhar com formas (objetos de desenho).

Os exemplos a seguir descrevem como:

  • Retornar uma forma existente em um slide, indexada por nome ou número.

  • Retornar uma forma recém-criada em um slide.

  • Retornar uma forma dentro da seleção.

  • Retornar o título de slide e outros espaços reservados em um slide.

  • Retornar as formas anexadas às bordas de um conector.

  • Retornar a forma padrão de uma apresentação.

  • Retornar uma forma livre recém-criada.

  • Retornar uma única forma de dentro de um grupo.

  • Retornar um grupo recém-criado de formas.

Exemplo

Utilize Formas (índice), em que o índice é o nome da forma ou o número do índice, para devolver um objeto Forma que representa uma forma num diapositivo. O exemplo a seguir inverte horizontalmente a forma um e a forma chamada Rectangle 1 em myDocument.

Set myDocument = ActivePresentation.Slides(1)

myDocument.Shapes(1).Flip msoFlipHorizontal

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

A cada forma é atribuído um nome padrão quando você adiciona a coleção Shapes. Para dar à forma um nome mais significativo, use a propriedade Name. O exemplo seguinte adiciona um retângulo a myDocument, dá-lhe o nome Quadrado Vermelho e, em seguida, define a cor de primeiro plano e o estilo de linha.

Set myDocument = ActivePresentation.Slides(1)

With myDocument.Shapes.AddShape(Type:=msoShapeRectangle, _

        Top:=144, Left:=144, Width:=72, Height:=72)

    .Name = "Red Square"

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

    .Line.DashStyle = msoLineDashDot

End With

Para adicionar uma forma a um diapositivo e devolver um objeto Forma que representa a forma recentemente criada, utilize um dos seguintes métodos da coleção Formas : Add3DModel, AddCallout, AddConnector, AddCurve, AddLabel, AddLine, AddMediaObject, AddOLEObject, AddPicture, AddPlaceholder, AddPolyline, AddShape, AddTable, AddTextbox, AddTextEffect, AddTitle.

Utilize Selection.ShapeRange (índice), em que índice é o nome da forma ou o número do índice, para devolver um objeto Forma que representa uma forma dentro da seleção. O exemplo a seguir define o preenchimento para a primeira forma da seleção na janela ativa, supondo que haja pelo menos uma forma na seleção.

ActiveWindow.Selection.ShapeRange(1).Fill _

    .ForeColor.RGB = RGB(255, 0, 0)

Use Shapes.Title para retornar um objeto Shape que representa o título de um slide existente. Use Shapes.AddTitle para adicionar um título a um slide que ainda não tem um título e retornar um objeto Shape que representa o título recém-criado. Utilize Shapes.Placeholders (índice), em que o índice é o número de índice do marcador de posição, para devolver um objeto Forma que representa um marcador de posição. Se você não tiver alterado a ordem de disposição em camadas das formas em um slide, as três instruções seguintes serão equivalentes, supondo-se que o slide um tenha um título.

ActivePresentation.Slides(1).Shapes.Title _

    .TextFrame.TextRange.Font.Italic = True

ActivePresentation.Slides(1).Shapes.Placeholders(1) _

    .TextFrame.TextRange.Font.Italic = True

ActivePresentation.Slides(1).Shapes(1).TextFrame _

    .TextRange.Font.Italic = True

Para devolver um objeto Forma que representa uma das formas anexadas por uma conexão, utilize a propriedade BeginConnectedShape ou EndConnectedShape .

Para devolver um objeto Forma que representa a forma predefinida para uma apresentação, utilize a propriedade DefaultShape .

Utilize os métodos BuildFreeform e AddNodes para definir a geometria de uma nova forma livre e utilize o método ConvertToShape para criar a forma livre e devolver o objeto Shape que o representa.

Utilize GroupItems (índice), em que índice é o nome da forma ou o número de índice dentro do grupo, para devolver um objeto Forma que representa uma única forma numa forma agrupada.

Use o método Group ou Regroup para agrupar um intervalo de formas e retornar um único objeto Shape que representa o grupo recém-formado. Após um grupo ter sido formado, você pode trabalhar com o grupo da mesma maneira que você trabalha com qualquer outra forma.

Métodos

Propriedades

Confira também

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.