Powerpoint VBA hinzufügen C# entfernen

Die VBA Makros werden verwendet, um verschiedene Funktionalitäten in PowerPoint Präsentationen zu automatisieren. Beispielsweise können Sie VBA verwenden, um sich wiederholende Aufgaben auszuführen, Diagramme und Formulare zu erstellen usw. In diesem Artikel erfahren Sie, wie Sie programmgesteuert mit PowerPoint-VBA Makros arbeiten. Insbesondere behandelt der Artikel das Hinzufügen, Extrahieren oder Entfernen von VBA Makros in PowerPoint Präsentationen mit C#.

C# API für PowerPoint-VBA Makros

Aspose.Slides for .NET ist eine funktionsreiche API, mit der Sie PowerPoint Präsentationen mit C# erstellen, bearbeiten und konvertieren können. Darüber hinaus ermöglicht Ihnen die API, nahtlos mit VBA Makros zu arbeiten. Um die API zu verwenden, können Sie entweder ihre DLL herunterladen oder sie mit NuGet installieren.

PM> Install-Package Aspose.Slides.NET

Hinzufügen von VBA Makros in PowerPoint Präsentationen mit C#

Im Folgenden sind die Schritte zum Hinzufügen eines VBA Makros in einer PowerPoint Präsentation mit C# aufgeführt.

Das folgende Codebeispiel zeigt, wie Sie VBA Makros in einer PowerPoint Präsentation mit C# hinzufügen.

// Präsentation laden
using (Presentation presentation = new Presentation("presentation.pptm"))
{
    // Erstellen Sie ein neues VBA Projekt
    presentation.VbaProject = new VbaProject();

    // Fügen Sie dem VBA Projekt ein leeres Modul hinzu
    IVbaModule module = presentation.VbaProject.Modules.AddEmptyModule("Module");
  
    // Legen Sie den Quellcode des Moduls fest
    module.SourceCode = @"Sub Test(oShape As Shape) MsgBox ""Test"" End Sub";

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

    // Verweis auf Office erstellen
    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");

    // Fügen Sie dem VBA Projekt Verweise hinzu
    presentation.VbaProject.References.Add(stdoleReference);
    presentation.VbaProject.References.Add(officeReference);
    
    // Präsentation speichern
    presentation.Save("AddVBAMacros.pptm", SaveFormat.Pptm);
}

Extrahieren Sie VBA Makros aus PowerPoint mit C#

Mit Aspose.Slides for .NET können Sie auch VBA-Module aus VBA Projekten in PowerPoint Präsentationen extrahieren. Im Folgenden sind die Schritte zum Ausführen dieses Vorgangs aufgeführt.

Das folgende Codebeispiel zeigt, wie Sie PowerPoint-VBA Makros mit C# extrahieren.

// Präsentation laden
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);
		}
	}
}

Entfernen Sie PowerPoint-VBA Makros

Sie können auch ein bestimmtes VBA Makro aus einer PowerPoint Präsentation entfernen. Dazu greifen Sie auf das VBA-Modul zu und entfernen es über seinen Index aus dem VBA Projekt. Im Folgenden sind die Schritte zum Ausführen dieses Vorgangs aufgeführt.

Das folgende Codebeispiel zeigt, wie ein PowerPoint-VBA Makro entfernt wird.

// Präsentation laden
using (Presentation presentation = new Presentation("Presentation.pptm"))
{
    // Entfernen Sie das VBA-Modul
    presentation.VbaProject.Modules.Remove(presentation.VbaProject.Modules[0]);

    // Präsentation speichern
    presentation.Save("RemovedVBAMacros.pptm", SaveFormat.Pptm);
}

Holen Sie sich eine kostenlose API Lizenz

Sie können Aspose.Slides for .NET ohne Evaluierungseinschränkungen testen, indem Sie eine temporäre Lizenz anfordern.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie mithilfe von C# mit PowerPoint-VBA Makros arbeiten. Insbesondere haben Sie gesehen, wie Sie VBA Makros in PowerPoint Präsentationen hinzufügen, extrahieren und entfernen. Um andere Funktionen der API zu erkunden, können Sie die Dokumentation konsultieren. Darüber hinaus können Sie uns Ihre Fragen gerne über unser Forum mitteilen.

Siehe auch

Tipp: Vielleicht möchten Sie Aspose KOSTENLOSE Web-App zum Entfernen von Makros ausprobieren.