Дальнейшие действия касаются Excel, но я уверен, что то же самое применимо к любым продуктам Office.
Самый простой способ - сохранить повторно используемый код в виде надстройки (* .xla для Excel 2003, * .xlam для Excel 2007+). Затем вы добавляете надстройку в Excel, и все открытые таблицы будут иметь доступ к пользовательским функциям, которые есть в вашем надстройке. Если вы добавляете конкретный код VBA в электронную таблицу, вы можете добавить ссылку на свой надстройку, и ваш код VBA будет иметь доступ ко всем общедоступным подпрограммам, функциям и классам вашего надстройки.
В моей организации мы используем 3 самодельных надстройки - они хранятся в C: \ Program Files \ OrganisationName. И каждый имеет к ним доступ. Когда обновление сделано, нам нужно только скопировать новую версию на каждый жесткий диск и перезапустить Excel, и у них будет новая версия.
Дополнения содержат служебные функции, такие как функции для:
- чтение данных из / запись данных в электронные таблицы / файлы / базы данных.
- обычные манипуляции с данными, такие как удаление дубликатов из списка
- расширенные статистические функции
- и т.д.
Несколько недостатков:
- Если у вас открыто несколько экземпляров Excel, только один может обновить надстройку, остальные экземпляры находятся в режиме только для чтения
- Если происходит сбой Excel, режим автоматического восстановления обычно не сохраняет изменения, внесенные в надстройку (TBC в более новых версиях) - есть несколько инструментов для регулярного автоматического сохранения
Альтернативой является, например, разработка библиотек xlls или COM на VB или C #, но я этого не пробовал.
В Интернете есть множество учебных пособий, если вам нужна более подробная процедура.