Относительно того, как запускать подпрограммы в установленных надстройках (.xlam):
Убедитесь, что проект VBA, связанный с надстройкой, имеет уникальное имя (не VBAProject) - скажем, Addin_1.
В проекте VBA для книги, из которой вы хотите вызвать подпрограммы в надстройке, установите ссылку на Addin_1. Сервис> Ссылки, найдите Addin_1 в списке доступных ссылок и нажмите на соседнее поле (появляется галочка).
Внутри подпрограммы в модуле кода вашей рабочей книги теперь можно вызывать подпрограмму надстройки, используя:
Call Addin_1.routine_name(routine parameters)
Поскольку у вас есть ссылка на Addin_1, имена подпрограмм в надстройке появятся после того, как вы введете Call Addin_1.
, а список параметров для конкретной подпрограммы появится после того, как вы наберете Call Addin_1.routine_name(
, что очень помогает при написании безошибочного кода.
Протестировано с Excel 2013. Обнаружено, когда мне было любопытно посмотреть, что произошло, когда я установил ссылку на проект VBA с установленной надстройкой (.xlam). Я не видел этого документально.