Попробую объяснить, зачем это нужно.
Сначала все сделал на Лиспе. Реактор отслеживает изменение системной переменной. Функция реактора определяет все что нужно и назначает новый слой из списка допустимых (размороженных в текущем ВЭ). Вроде бы все просто и красиво, но назначая новый слой, тем самым приходится менять значение другой системной переменной... Как результат - АКАД вешается.
Сейчас отделил мух от котлет - реактор на VBA, функция переназначения на Лиспе. Работает исправно, только постоянно в глаза лезет одно "НО" вызов Лисп-функции из VBA через ThisDrawing.SendCommand, что приводит к тому, что АКАД запоминает эту команду как последнюю. Она и вызывается при нажатии Enter'а или пробела. А это не есть то что нужно, хочется чтоб АКАД ее не помнил и вызывал ту, что была до нее.
Вот потому и предпринял попытку запихнуть все в VBA, чтоб избавиться от SendCommand.
Может быть есть другие пути решения?