Ajout d'un module VBA

Aperçu

Dans les fichiers Microsoft Project (MPP/XML), les modules VBA vous permettent de stocker des macros qui automatisent les tâches de gestion de projet. Avec Aspose.Tasks for .NET, vous pouvez ajouter de nouveaux modules procedural ou class dans un projet VBA existant. Cette fonctionnalité est disponible à partir de la version 25.6.

Ajout d’un nouveau module VBA

L’exemple ci-dessous montre comment ajouter un nouveau module procedural et lui attribuer du code source. Avant d’exécuter ce code, assurez-vous que le projet contient déjà des modules VBA. Sinon, une exception sera levée.

 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    VbaModule newModule = VbaModule.CreateProceduralModule("TestModule10");
 9    newModule.SourceCode = @"Sub TestMacro()
10    MsgBox ""This is a test macro.""
11    End Sub";
12
13    project.VbaProject.Modules.Add(newModule);
14                
15    // WriteVba flag should be specified in order to apply changes to MPP file.
16    project.Save("output.mpp", new MPPSaveOptions { WriteVba = true });

Ce code crée un nouveau module VBA nommé TestModule10 avec une simple macro qui affiche une boîte de dialogue. Pour enregistrer correctement le module, vous devez activer le WriteVba paramètre dans le MPPSaveOptions.

Foire aux questions

Q : Puis-je ajouter des modules VBA à un projet sans projet VBA existant ?

Q : Quels types de modules VBA puis-je ajouter ?

Conclusion

L’ajout de modules VBA avec Aspose.Tasks for .NET offre aux développeurs des capacités d’automatisation directement dans les fichiers Microsoft Project. Cela permet d’étendre les fonctionnalités du projet avec des macros personnalisées pour des opérations répétitives ou complexes.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.