expression.HasChildShapeRange
expression Required. An expression that returns one of the objects in the Applies To list.
Example
This example creates a new slide with a drawing canvas, populates the drawing canvas with shapes, and selects the shapes added to the canvas. Then after checking that the shapes selected are child shapes, it fills the child shapes with a pattern.
Sub ChildShapes()
Dim sldNew As Slide
Dim shpCanvas As Shape
'Create a new slide with a drawing canvas and shapes
Set sldNew = Presentations(1).Slides _
.Add(Index:=1, Layout:=ppLayoutBlank)
Set shpCanvas = sldNew.Shapes.AddCanvas( _
Left:=100, Top:=100, Width:=200, Height:=200)
With shpCanvas.CanvasItems
.AddShape msoShapeRectangle, Left:=0, Top:=0, _
Width:=100, Height:=100
.AddShape msoShapeOval, Left:=0, Top:=50, _
Width:=100, Height:=100
.AddShape msoShapeDiamond, Left:=0, Top:=100, _
Width:=100, Height:=100
End With
'Select all shapes in the canvas
shpCanvas.CanvasItems.SelectAll
'Fill canvas child shapes with a pattern
With ActiveWindow.Selection
If .HasChildShapeRange = True Then
.ChildShapeRange.Fill.Patterned Pattern:=msoPatternDivot
Else
MsgBox "This is not a range of child shapes."
End If
End With
End Sub