VbaModuleCollection

VbaModuleCollection class

Rappresenta una raccolta diVbaModule oggetti.

Per saperne di più, visita ilLavorare con le macro VBA articolo di documentazione.

public sealed class VbaModuleCollection : IEnumerable<VbaModule>

Proprietà

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

Metodi

NomeDescrizione
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;
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");

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

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

Guarda anche