As macros VBA são necessárias para resolver o problema.
Se você nunca antes teve que trabalhar com a VBA (sorte de você), você pode aprender o assunto no artigo da Microsoft: Introdução ao VBA em PowerPoint 2010 .
Você precisará das seguintes duas macros: GetShapeRounding e SetShapeRounding. Ambas as macros assumem que o retângulo arredondado é o selecionado atualmente forma. A primeira macro calcula o tamanho do raio da forma em pontos e o segundo define a forma selecionada para este raio.
Usando as macros é por:
- Crie o retângulo arredondado e selecione-o (ou deixe-o selecionado)
- Executa a primeira macro para calcular o raio
- Redimensione o retângulo arredondado e deixe-o selecionado
- Execute a segunda macro para definir seus cantos para o raio calculado
Aqui estão as macros:
Dim sngRadius As Single ' Radius size in points
Sub GetShapeRounding()
Dim oSh As Shape
Set oSh = ActiveWindow.Selection.ShapeRange(1)
With oSh
If .Width < .Height Then
sngRadius = .Width * .Adjustments(1)
Else ' .Width >= .Height
sngRadius = .Height * .Adjustments(1)
End If
End With
MsgBox sngRadius
Set oSh = Nothing
End Sub
Sub SetShapeRounding()
Dim oSh As Shape
Set oSh = ActiveWindow.Selection.ShapeRange(1)
With oSh
If .Width < .Height Then
.Adjustments(1) = sngRadius / .Width
Else ' .Width >= .Height
.Adjustments(1) = sngRadius / .Height
End If
End With
Set oSh = Nothing
End Sub
Testado no PowerPoint 2010.