сейчас этот макрос у меня уже претерпел изменения (даже здесь уже описана вторая версия), но он прекрасно работает на объекте уже несколько лет