Копирование макроса VBA UserForm DesignerStorage из шаблона в целевую книгу
Возможные сценарии использования
Aspose.Cells для Python via .NET позволяет копировать VBA-проект из одного Excel-файла в другой. VBA-проект включает в себя различные типы модулей, такие как Документ, Процедурный, Конструктор и др. Все модули можно скопировать с помощью простого кода, но для модуля Конструктора требуется доступ к дополнительным данным, называемым Designer Storage, которые нужно получить или скопировать. Следующие два метода работают с Designer Storage.
Копирование макроса VBA UserForm DesignerStorage из шаблона в целевую книгу
Пожалуйста, ознакомьтесь со следующим образцовым кодом. Он копирует проект VBA из шаблонного файла Excel в пустую книгу и сохраняет его как выходной файл Excel. Если вы откроете проект VBA внутри шаблонного файла Excel, вы увидите пользовательскую форму, как показано ниже. Пользовательская форма состоит из хранилища дизайнера, поэтому оно будет скопировано с использованием методов VbaModuleCollection.get_designer_storage() и VbaModuleCollection.add_designer_storage().
На следующем снимке экрана показан выходной файл Excel и его содержимое, скопированные из шаблонного файла Excel. При нажатии на кнопку 1 открывается пользовательская форма VBA, которая сама содержит кнопку команды, показывающую сообщение при нажатии.