přidat odebrat powerpoint vba C#

Makra VBA se používají k automatizaci různých funkcí v prezentacích PowerPoint. VBA můžete například používat k provádění opakujících se úloh, generování grafů a formulářů atd. V tomto článku se dozvíte, jak programově pracovat s makry PowerPoint VBA. Konkrétně se tento článek bude zabývat tím, jak přidat, extrahovat nebo odebrat makra VBA v prezentacích PowerPoint pomocí C#.

C# API pro PowerPoint VBA makra

Aspose.Slides for .NET je rozhraní API bohaté na funkce, které umožňuje vytvářet, upravovat a převádět prezentace v PowerPointu pomocí jazyka C#. Kromě toho vám API umožňuje bezproblémovou práci s makry VBA. Abyste mohli API používat, můžete si buď stáhnout jeho DLL, nebo jej nainstalovat pomocí NuGet.

PM> Install-Package Aspose.Slides.NET

Přidejte makro VBA do prezentací PowerPoint pomocí C#

Následují kroky pro přidání makra VBA do prezentace PowerPoint pomocí C#.

Následující ukázka kódu ukazuje, jak přidat makro VBA do prezentace PowerPoint pomocí C#.

// Načíst prezentaci
using (Presentation presentation = new Presentation("presentation.pptm"))
{
    // Vytvořte nový projekt VBA
    presentation.VbaProject = new VbaProject();

    // Přidejte prázdný modul do projektu VBA
    IVbaModule module = presentation.VbaProject.Modules.AddEmptyModule("Module");
  
    // Nastavte zdrojový kód modulu
    module.SourceCode = @"Sub Test(oShape As Shape) MsgBox ""Test"" End Sub";

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

    // Vytvořte odkaz na 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");

    // Přidejte odkazy na projekt VBA
    presentation.VbaProject.References.Add(stdoleReference);
    presentation.VbaProject.References.Add(officeReference);
    
    // Uložit prezentaci
    presentation.Save("AddVBAMacros.pptm", SaveFormat.Pptm);
}

Extrahujte makra VBA z PowerPointu pomocí C#

Aspose.Slides for .NET také umožňuje extrahovat moduly VBA z projektů VBA v prezentacích PowerPoint. Následují kroky k provedení této operace.

Následující ukázka kódu ukazuje, jak extrahovat makra PowerPoint VBA pomocí C#.

// Načíst prezentaci
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);
		}
	}
}

Odstraňte makra PowerPoint VBA

Můžete také odebrat konkrétní makro VBA z prezentace PowerPoint. Za tímto účelem zpřístupníte a odeberete modul VBA podle jeho indexu z projektu VBA. Následují kroky k provedení této operace.

Následující ukázka kódu ukazuje, jak odebrat makro PowerPoint VBA.

// Načíst prezentaci
using (Presentation presentation = new Presentation("Presentation.pptm"))
{
    // Odeberte modul VBA
    presentation.VbaProject.Modules.Remove(presentation.VbaProject.Modules[0]);

    // Uložit prezentaci
    presentation.Save("RemovedVBAMacros.pptm", SaveFormat.Pptm);
}

Získejte bezplatnou licenci API

Aspose.Slides for .NET můžete vyzkoušet bez omezení hodnocení, když požádáte o dočasnou licenci.

Závěr

V tomto článku jste se naučili pracovat s makry PowerPoint VBA pomocí C#. Konkrétně jste viděli, jak přidávat, extrahovat a odstraňovat makra VBA v prezentacích PowerPoint. Chcete-li prozkoumat další funkce API, můžete nahlédnout do dokumentace. Kromě toho nám můžete sdělit své dotazy prostřednictvím našeho fóra.

Viz také

Tip: Možná budete chtít vyzkoušet Aspose webová aplikace pro odstranění maker ZDARMA.