VbaModule

VbaModule class

Обеспечивает доступ к модулю проекта VBA.

Чтобы узнать больше, посетитеРабота с макросами VBA статья документации.

public class VbaModule

Конструкторы

ИмяОписание
VbaModule()Создает пустой модуль.

Характеристики

ИмяОписание
Name { get; set; }Получает или задает имя модуля проекта VBA.
SourceCode { get; set; }Получает или задает исходный код модуля проекта VBA.
Type { get; set; }Указывает, является ли модуль процедурным модулем, модулем документа, модулем класса или модулем дизайнера.

Методы

ИмяОписание
Clone()Выполняет копиюVbaModule .

Примеры

Показывает, как получить доступ к информации о проекте VBA документа.

Document doc = new Document(MyDir + "VBA project.docm");

// Проект VBA содержит набор модулей VBA.
VbaProject vbaProject = doc.VbaProject;
Console.WriteLine(vbaProject.IsSigned
    ? $"Project name: {vbaProject.Name} signed; Project code page: {vbaProject.CodePage}; Modules count: {vbaProject.Modules.Count()}\n"
    : $"Project name: {vbaProject.Name} not signed; Project code page: {vbaProject.CodePage}; Modules count: {vbaProject.Modules.Count()}\n");

VbaModuleCollection vbaModules = doc.VbaProject.Modules; 

Assert.AreEqual(vbaModules.Count(), 3);

foreach (VbaModule module in vbaModules)
    Console.WriteLine($"Module name: {module.Name};\nModule code:\n{module.SourceCode}\n");

// Устанавливаем новый исходный код для модуля VBA. Доступ к модулям VBA в коллекции можно получить либо по индексу, либо по имени.
vbaModules[0].SourceCode = "Your VBA code...";
vbaModules["Module1"].SourceCode = "Your VBA code...";

// Удалить модуль из коллекции.
vbaModules.Remove(vbaModules[2]);

Смотрите также