1

У меня есть макрос, который я хотел бы использовать в некоторых книгах XLSX, назовите их wb1.xlsx и wb2.xlsx. Поскольку они XSLX, они не могут содержать никаких макроопределений.

Мой первый выбор для достижения этой цели состоял в том, чтобы использовать Персональную книгу макросов в каталоге XLSTART. Однако я предпочитаю, чтобы это не было глобальным, то есть я не хочу, чтобы каждая рабочая книга обращалась к этому макросу, скорее, я бы хотел, чтобы только wb1.xlsx и wb2.xlsx обращались к макросу.

Моя следующая попытка состояла в том, чтобы определить мой макрос в надстройке, вызвать его:

% APPDATA%\Microsoft\ Надстройка \ MyMacros.xlam

Я проверил элемент MyMacros в списке управления надстройками для wb1.xlsx, а затем увидел, что он уже был там для wb2.xlsx. Затем я снял флажок с пункта «MyMacros» в списке надстроек, потому что не хотел, чтобы его использовали в будущих книгах, но когда я попытался открыть wb1.xlsx, впоследствии я получил сообщение об ошибке:

Не удается запустить макрос "mymacro". Макрос может быть недоступен в этой книге или все макросы могут быть отключены.

Причина этого в том, что MyMacros.xlam больше не было в списке надстроек. Очевидно, что любое изменение в списке надстроек является глобальным, а не свойством конкретной рабочей книги.

Кто-нибудь знает какой-либо другой способ доступа к макросу из некоторых (не всех) рабочих книг XLSX?

1 ответ1

0

Вы можете сохранить макрос в файле .xlsm, а затем сохранить этот файл с поддержкой макросов, а также файлы wb1.xlsx и wb2.xlsx в виде файла рабочей области (* .xlw). Затем вы можете открыть файл рабочей области, который откроет все три книги одним махом.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .