Sub Test() ConvertFills ActivePage.ShapesEnd SubPrivate Sub ConvertFills(ss As Shapes) Dim s As Shape For Each s In ss If s.Type = cdrGroupShape Then 'If this is a group shape, then all the shapes in this group 'are processed by calling the function recursively. ConvertFills s.Shapes Else If s.Fill.Type = cdrUniformFill Then s.Fill.UniformColor.ConvertToGray End If End If Next sEnd Sub