VbaModuleCollection

VbaModuleCollection class

Rappresenta una raccolta diVbaModule oggetti.

public sealed class VbaModuleCollection : IEnumerable<VbaModule>

Proprietà

Nome Descrizione
Count { get; } Restituisce il numero di moduli VBA nella raccolta.
Item { get; } Recupera aVbaModule oggetto per indice. (2 indexers)

Metodi

Nome Descrizione
Add(VbaModule) Aggiunge un modulo alla raccolta.
Remove(VbaModule) Rimuove il modulo specificato dalla raccolta.

Esempi

Mostra come accedere alle informazioni sul progetto VBA di un documento.

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

// Un progetto VBA contiene una raccolta di moduli 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");

// Imposta un nuovo codice sorgente per il modulo VBA. Puoi accedere ai moduli VBA nella raccolta per indice o per nome.
vbaModules[0].SourceCode = "Your VBA code...";
vbaModules["Module1"].SourceCode = "Your VBA code...";

// Rimuove un modulo dalla raccolta.
vbaModules.Remove(vbaModules[2]);

Guarda anche