Я пытаюсь найти решение, позволяющее использовать большую часть моей кодовой базы VBA в книгах. Это включает в себя создание .xlam
файла, который будет содержать общие модули и классы (+ их соответствующие фабрики).
Я готов использовать замечательный RibbonUI в Office 2007, и этот файл .xlam
объявляет пользовательскую вкладку (для аргумента давайте назовем ее MyTab
). Мне нужно MyTab
, чтобы отображать только некоторые элементы, если у пользователя есть определенные разрешения (которыми я управляю через VBA).
Кроме того, я хочу, чтобы мои другие рабочие книги могли добавлять материалы в MyTab
, которые также могут содержать динамические элементы (использующие VBA).
Проблема, с которой я сталкиваюсь, заключается в том, что всякий раз, когда я сталкиваюсь с тем, что книга ссылается на AddIn.xlam
и объявляет элементы динамической ленты, Excel пытается обновить все сразу, вызывая код VBA в двух отдельных потоках (я полагаю, ), который в конечном итоге завершается ошибкой (поскольку в Excel выполняется однопоточное принудительное выполнение в Excel), и генерирует пустые диалоговые окна, на которых написано только «400», и две кнопки «ОК» и «Справка».
У кого-нибудь есть опыт, как лучше всего решить эту проблему?