Bearbeiten von VBA-Quellcode

Übersicht

Microsoft Project (MPP/XML) Dateien können VBA-Module enthalten, die Makros speichern, um projektbezogene Aufgaben zu automatisieren. Ab Version 25.6, Aspose.Tasks for .NET erlaubt nicht nur das Lesen, sondern auch das Bearbeiten des Quellcodes vorhandener VBA-Module in einem Projekt.

Dadurch ist es möglich, die Automatisierungslogik zu pflegen und zu aktualisieren, ohne auf Microsoft Project angewiesen zu sein.

Bearbeiten des Quellcodes eines bestehenden Moduls

Das folgende Beispiel zeigt, wie der Quellcode eines Moduls mit dem Namen Module1 in einem bestehenden Projekt.

 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 });

Dieses Beispiel prüft, ob das Projekt VBA-Module enthält, findet ein Modul anhand seines Namens und ersetzt dessen Quellcode. Um Änderungen anzuwenden, WriteVba muss beim Speichern des Projekts der Schalter aktiviert sein.

Häufig gestellte Fragen

F: Kann ich mehrere Module gleichzeitig aktualisieren?

F: Was passiert, wenn ich versuche, ein nicht vorhandenes Modul zu aktualisieren?

F: Kann ich VBA-Quellcode in einem Projekt bearbeiten, das keine VBA-Module enthält?

F: Kann ich VBA-Module umbenennen?

Fazit

Das Bearbeiten von VBA-Quellcode mit Aspose.Tasks for .NET bietet volle Kontrolle über Projektmakros und ermöglicht Entwicklern, benutzerdefinierte Logik in Microsoft Project-Dateien zu automatisieren, anzupassen und zu pflegen, ohne auf Microsoft Project selbst angewiesen zu sein.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.