test it ...
'select two objects and ...
Sub Dup_and_Align()Dim shr As ShapeRange, rec As Shape, cir As Shape, x1 As Double, y1 As Double, wrec As Double, hrec As DoubleActiveDocument.ReferencePoint = cdrCenterSet shr = ActiveSelectionRangeIf shr(1).SizeHeight < shr(2).SizeHeight ThenSet cir = shr(1)Set rec = shr(2)ElseSet cir = shr(2)Set rec = shr(1)End Ifrec.GetBoundingBox x1, y1, wrec, hreccir.SetPosition x1, y1cir.Duplicate wrec / 2, 0cir.Duplicate wrec, 0cir.Duplicate 0, hrec / 2cir.Duplicate 0, hreccir.Duplicate wrec / 2, hreccir.Duplicate wrec, hreccir.Duplicate wrec, hrec / 2End Sub
Perfect.