VbaProject

VbaProject class

Proporciona acceso a la información del proyecto VBA. Un proyecto VBA dentro del documento se define como una colección de módulos VBA.

public class VbaProject

Constructores

Nombre Descripción
VbaProject() Crea un VbaProject. en blanco

Propiedades

Nombre Descripción
CodePage { get; } Devuelve la página de códigos del proyecto VBA.
IsSigned { get; } Muestra si el VbaProject está firmado o no.
Modules { get; } Devuelve la colección de módulos de proyecto de VBA.
Name { get; set; } Obtiene o establece el nombre del proyecto VBA.
References { get; } Obtiene una colección de referencias de proyectos de VBA.

Métodos

Nombre Descripción
Clone() Realiza una copia delVbaProject .

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;
    ? $"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");

// Establecer nuevo código fuente para el módulo VBA. Puede acceder a los módulos de VBA en 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