Macro Request- Select all Lens applied objects - including grouped

Is there a way to select all lens only applied objects in a file / selection ?

There have been a few times I came across some objects to export or whatever I was doing
and they contained a Lens (usually Transparency) and things went fubar.

Would like to run a macro that I could check if the object(s) contains a Lens. Even grouped.
Maybe dig into and highlight the object within the group(s)? and go from there.
Seems like a stretch here but what the hey... maybe it's been posted but search wasn't friendly to share.

Thanks

  • this macro will find all objects in the selected range (including in groups) 
    with lenses and remove transparency if there is any

    Sub FindLens()
    Dim sh As Shape, eff As Effect
    Dim she As ShapeRange, shl As New ShapeRange
    Set she = ActiveSelectionRange.Shapes.FindShapes(Query:="@com.Effects.Count > 0")
    For Each sh In she
    For Each eff In sh.Effects
    If eff.Type = cdrLens Then shl.Add sh
    If eff.Lens.Type = cdrLensTransparency Then eff.Clear
    Next eff
    Next
    MsgBox shl.Count & " Lens in Selection"
    shl.CreateSelection
    End Sub