invert selection of the below script is not working, someone help

Private Sub SelectionInverse()
Dim SHAPE_BhBp As Shape

For Each SHAPE_BhBp In ActivePage.Shapes

If SHAPE_BhBp.Selected = True Then
SHAPE_BhBp.Selected = False
Else
SHAPE_BhBp.Selected = True
End If

Next
End Sub