VbaModule

VbaModule class

Proporciona acceso al módulo de proyecto VBA.

Para obtener más información, visite elTrabajar con macros VBA artículo de documentación.

public class VbaModule

Constructores

NombreDescripción
VbaModule()Crea un módulo vacío.

Propiedades

NombreDescripción
Name { get; set; }Obtiene o establece el nombre del módulo del proyecto VBA.
SourceCode { get; set; }Obtiene o establece el código fuente del módulo de proyecto VBA.
Type { get; set; }Especifica si el módulo es un módulo de procedimiento, un módulo de documento, un módulo de clase o un módulo de diseñador.

Métodos

NombreDescripción
Clone()Realiza una copia delVbaModule .

Ejemplos

Muestra cómo acceder a la información del proyecto VBA de un documento.

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

// Un proyecto VBA contiene una colección de módulos 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");

// Establece un nuevo código fuente para el módulo VBA. Puede acceder a los módulos VBA de la colección por índice o por nombre.
vbaModules[0].SourceCode = "Your VBA code...";
vbaModules["Module1"].SourceCode = "Your VBA code...";

// Eliminar un módulo de la colección.
vbaModules.Remove(vbaModules[2]);

Ver también