Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade

Como criar custom shapes no PowerPoint utilizando VBA no Windows

Custom shapes são formas personalizadas que podem ser criadas em softwares de apresentação como o Microsoft PowerPoint. No ambiente Windows, uma maneira eficaz de criar e manipular essas formas é através do uso de VBA (Visual Basic for Applications). A criação de custom shapes pode ser extremamente útil para personalizar apresentações, tornando-as mais atraentes e comunicativas. Este artigo irá demonstrar como utilizar VBA no PowerPoint para criar formas personalizadas.


Exemplos:


1. Criando um Custom Shape Básico:
Para criar um custom shape básico no PowerPoint utilizando VBA, siga os passos abaixo:


   Sub CreateCustomShape()
Dim slide As slide
Dim shape As shape

' Adiciona um novo slide na apresentação
Set slide = ActivePresentation.Slides.Add(1, ppLayoutBlank)

' Adiciona uma forma oval no slide
Set shape = slide.Shapes.AddShape(msoShapeOval, 100, 100, 200, 100)

' Personaliza a forma
With shape
.Fill.ForeColor.RGB = RGB(255, 0, 0) ' Cor de preenchimento vermelho
.Line.ForeColor.RGB = RGB(0, 0, 0) ' Cor da linha preta
.Line.Weight = 2 ' Espessura da linha
End With
End Sub

2. Criando um Custom Shape Complexo:
Para criar uma forma mais complexa, como um polígono personalizado, você pode usar o código abaixo:


   Sub CreateComplexShape()
Dim slide As slide
Dim shape As shape
Dim pointsArray(1 To 5, 1 To 2) As Single

' Define os pontos do polígono
pointsArray(1, 1) = 100: pointsArray(1, 2) = 100
pointsArray(2, 1) = 200: pointsArray(2, 2) = 50
pointsArray(3, 1) = 300: pointsArray(3, 2) = 100
pointsArray(4, 1) = 250: pointsArray(4, 2) = 200
pointsArray(5, 1) = 150: pointsArray(5, 2) = 200

' Adiciona um novo slide na apresentação
Set slide = ActivePresentation.Slides.Add(1, ppLayoutBlank)

' Adiciona a forma poligonal no slide
Set shape = slide.Shapes.AddPolyline(pointsArray)

' Personaliza a forma
With shape
.Fill.ForeColor.RGB = RGB(0, 255, 0) ' Cor de preenchimento verde
.Line.ForeColor.RGB = RGB(0, 0, 255) ' Cor da linha azul
.Line.Weight = 3 ' Espessura da linha
End With
End Sub

To share Download PDF