А зачем объект выделять с помощью макроса? Заранее выделить нельзя? Либо, если есть форма, сделать немодальную форму, выделить объект, продолжить с activeshape.
Можно, конечно позаморачиваться с функцией GetUserClick, а по объекту или нет с помощью IsOnShape. Но чё-то, помнится, эта функция...