Редагування вихідного коду VBA

Огляд

Файли Microsoft Project (MPP/XML) можуть містити модулі VBA, що зберігають макроси для автоматизації завдань, пов’язаних із проєктом. Починаючи з версії 25.6, Aspose.Tasks for .NET дозволяє не лише читання, а й редагування вихідного коду існуючих модулів VBA у проєкті.

Це дозволяє підтримувати й оновлювати логіку автоматизації, не покладаючись на Microsoft Project.

Редагування вихідного коду існуючого модуля

У наведеному прикладі показано, як редагувати вихідний код модуля з іменем Module1 у наявному проєкті.

 1    Project project = new Project("FileWithVbaProject.mpp");
 2
 3    if (project.VbaProject.Modules.Count == 0)
 4    {
 5        throw new InvalidOperationException("Project should contain VBA modules");
 6    }
 7
 8    var existingModule = project.VbaProject.Modules["Module1"];
 9    existingModule.SourceCode = @"Sub Method()
10    MsgBox ""This is an updated text.""
11    End Sub";
12            
13    // WriteVba flag should be specified in order to apply changes to MPP file.
14    project.Save("output.mpp", new MPPSaveOptions { WriteVba = true });

Цей приклад перевіряє, чи містить проєкт модулі VBA, знаходить модуль за його назвою і замінює його вихідний код. Щоб застосувати зміни, WriteVba прапорець має бути увімкнений під час збереження проєкту.

Поширені запитання

П: Чи можу я одночасно оновити кілька модулів?

П: Що станеться, якщо я спробую оновити неіснуючий модуль?

П: Чи можу я редагувати вихідний код VBA в проєкті без модулів VBA?

П: Чи можу я перейменувати модулі VBA?

Висновок

Редагування вихідного коду VBA за допомогою Aspose.Tasks for .NET надає повний контроль над макросами проєкту, дозволяючи розробникам автоматизувати, налаштовувати та підтримувати власну логіку всередині файлів Microsoft Project без покладення на сам Microsoft Project.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.