Agregar módulo VBA
Descripción general
En los archivos Microsoft Project (MPP/XML), los módulos VBA le permiten almacenar macros que automatizan tareas de gestión de proyectos. Con Aspose.Tasks for .NET, puede agregar nuevos módulos procedimentales o de clase en un proyecto VBA existente. Esta función está disponible a partir de la versión 25.6.
Agregar un nuevo módulo VBA
El ejemplo siguiente muestra cómo agregar un nuevo módulo de procedimiento y asignarle código fuente. Antes de ejecutar este código, asegúrese de que el proyecto ya contenga módulos VBA. De lo contrario, se producirá una excepción.
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 });
Este código crea un nuevo módulo VBA llamado TestModule10
con una macro simple que muestra un cuadro de mensaje. Para guardar el módulo correctamente, debe habilitar la WriteVba
opción en el MPPSaveOptions
.
Preguntas frecuentes
P: ¿Puedo agregar módulos VBA a un proyecto sin un proyecto VBA existente?
- No. El archivo Microsoft Project de destino debe contener ya un proyecto VBA con al menos un módulo.
P: ¿Qué tipos de módulos VBA puedo agregar?
- Puede agregar los siguientes tipos de módulos: procedimentales y de clase .
Conclusión
Agregar módulos VBA con Aspose.Tasks for .NET proporciona a los desarrolladores capacidades de automatización directamente dentro de los archivos Microsoft Project. Esto ayuda a ampliar la funcionalidad del proyecto con macros personalizadas para operaciones repetitivas o complejas.