aggiungi rimuovi powerpoint vba C#

Le macro VBA vengono utilizzate per automatizzare diverse funzionalità nelle presentazioni PowerPoint. Ad esempio, puoi utilizzare VBA per eseguire attività ripetitive, generare grafici e moduli, ecc. In questo articolo imparerai come lavorare con le macro VBA di PowerPoint a livello di codice. In particolare, l’articolo tratterà come aggiungere, estrarre o rimuovere macro VBA nelle presentazioni PowerPoint utilizzando C#.

API C# per macro VBA di PowerPoint

Aspose.Slides for .NET è un’API ricca di funzionalità che consente di creare, modificare e convertire presentazioni PowerPoint utilizzando C#. Inoltre, l’API ti consente di lavorare senza problemi con le macro VBA. Per utilizzare l’API, puoi scaricare la sua DLL o installarla usando NuGet.

PM> Install-Package Aspose.Slides.NET

Aggiungi macro VBA nelle presentazioni di PowerPoint usando C#

Di seguito sono riportati i passaggi per aggiungere una macro VBA in una presentazione di PowerPoint usando C#.

Nell’esempio di codice seguente viene illustrato come aggiungere una macro VBA in una presentazione di PowerPoint usando C#.

// Carica presentazione
using (Presentation presentation = new Presentation("presentation.pptm"))
{
    // Crea un nuovo progetto VBA
    presentation.VbaProject = new VbaProject();

    // Aggiungi un modulo vuoto al progetto VBA
    IVbaModule module = presentation.VbaProject.Modules.AddEmptyModule("Module");
  
    // Imposta il codice sorgente del modulo
    module.SourceCode = @"Sub Test(oShape As Shape) MsgBox ""Test"" End Sub";

    // Crea riferimento a<stdole>
    VbaReferenceOleTypeLib stdoleReference =
        new VbaReferenceOleTypeLib("stdole", "*\\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\\Windows\\system32\\stdole2.tlb#OLE Automation");

    // Crea riferimento a Office
    VbaReferenceOleTypeLib officeReference =
        new VbaReferenceOleTypeLib("Office", "*\\G{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}#2.0#0#C:\\Program Files\\Common Files\\Microsoft Shared\\OFFICE14\\MSO.DLL#Microsoft Office 14.0 Object Library");

    // Aggiungi riferimenti al progetto VBA
    presentation.VbaProject.References.Add(stdoleReference);
    presentation.VbaProject.References.Add(officeReference);
    
    // Salva presentazione
    presentation.Save("AddVBAMacros.pptm", SaveFormat.Pptm);
}

Estrai macro VBA da PowerPoint usando C#

Aspose.Slides per .NET consente anche di estrarre moduli VBA da progetti VBA in presentazioni PowerPoint. Di seguito sono riportati i passaggi per eseguire questa operazione.

Nell’esempio di codice seguente viene illustrato come estrarre le macro VBA di PowerPoint usando C#.

// Carica presentazione
using (Presentation pres = new Presentation("presentation.pptm"))
{
	if (pres.VbaProject != null) // check if Presentation contains VBA Project
	{
		foreach (IVbaModule module in pres.VbaProject.Modules)
		{
			Console.WriteLine(module.Name);
			Console.WriteLine(module.SourceCode);
		}
	}
}

Rimuovere le macro VBA di PowerPoint

Puoi anche rimuovere una particolare macro VBA da una presentazione di PowerPoint. Per questo, accederai e rimuoverai il modulo VBA dal suo indice dal progetto VBA. Di seguito sono riportati i passaggi per eseguire questa operazione.

Nell’esempio di codice seguente viene illustrato come rimuovere una macro VBA di PowerPoint.

// Carica presentazione
using (Presentation presentation = new Presentation("Presentation.pptm"))
{
    // Rimuovere il modulo VBA
    presentation.VbaProject.Modules.Remove(presentation.VbaProject.Modules[0]);

    // Salva presentazione
    presentation.Save("RemovedVBAMacros.pptm", SaveFormat.Pptm);
}

Ottieni una licenza API gratuita

Puoi provare Aspose.Slides per .NET senza limitazioni di valutazione richiedendo una licenza temporanea.

Conclusione

In questo articolo, hai imparato a lavorare con le macro VBA di PowerPoint usando C#. In particolare, hai visto come aggiungere, estrarre e rimuovere macro VBA nelle presentazioni PowerPoint. Per esplorare altre funzionalità dell’API, puoi consultare la documentazione. Inoltre, puoi sentirti libero di farci sapere delle tue domande tramite il nostro forum.

Guarda anche

Suggerimento: potresti voler dare un’occhiata ad Aspose app Web per la rimozione di macro GRATUITA.