Макроси VBA використовуються для автоматизації різних функцій у презентаціях PowerPoint. Наприклад, ви можете використовувати VBA для виконання повторюваних завдань, створення діаграм і форм тощо. У цій статті ви дізнаєтеся, як програмно працювати з макросами PowerPoint VBA. Зокрема, у статті буде описано, як додавати, видобувати або видаляти макроси VBA в презентаціях PowerPoint за допомогою C#.
- C# API для макросів PowerPoint VBA
- Додайте макроси VBA в презентації PowerPoint за допомогою C#
- Витягніть макроси VBA з презентацій PowerPoint
- Видаліть макроси VBA з презентацій PowerPoint
- Отримайте безкоштовну ліцензію API
C# API для макросів PowerPoint VBA
Aspose.Slides for .NET — це багатофункціональний API, який дозволяє створювати, редагувати та конвертувати презентації PowerPoint за допомогою C#. Крім того, API дозволяє безперешкодно працювати з макросами VBA. Щоб використовувати API, ви можете завантажити його DLL або встановити його за допомогою NuGet.
PM> Install-Package Aspose.Slides.NET
Додайте макрос VBA в презентації PowerPoint за допомогою C#
Нижче наведено кроки, щоб додати макрос VBA до презентації PowerPoint за допомогою C#.
- Спочатку створіть екземпляр класу Presentation, щоб завантажити презентацію PowerPoint.
- Призначте новий VbaProject властивості Presentation.VbaProject.
- Додайте порожній модуль VBA за допомогою методу Presentation.VbaProject.Modules.AddEmptyModule(string).
- Отримати посилання на доданий модуль в об’єкт IVbaModule.
- Додайте вихідний код до модуля VBA за допомогою властивості IVbaModule.SourceCode.
- Створіть посилання на Microsoft Office і додайте їх до колекції Presentation.VbaProject.References.
- Нарешті, збережіть файл презентації за допомогою методу Presentation.Save(string, SaveFormat.Pptm).
У наведеному нижче прикладі коду показано, як додати макрос VBA до презентації PowerPoint за допомогою C#.
// Завантажити презентацію
using (Presentation presentation = new Presentation("presentation.pptm"))
{
// Створіть новий проект VBA
presentation.VbaProject = new VbaProject();
// Додайте порожній модуль до проекту VBA
IVbaModule module = presentation.VbaProject.Modules.AddEmptyModule("Module");
// Встановити вихідний код модуля
module.SourceCode = @"Sub Test(oShape As Shape) MsgBox ""Test"" End Sub";
// Створити посилання на<stdole>
VbaReferenceOleTypeLib stdoleReference =
new VbaReferenceOleTypeLib("stdole", "*\\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\\Windows\\system32\\stdole2.tlb#OLE Automation");
// Створіть посилання на 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");
// Додайте посилання на проект VBA
presentation.VbaProject.References.Add(stdoleReference);
presentation.VbaProject.References.Add(officeReference);
// Зберегти презентацію
presentation.Save("AddVBAMacros.pptm", SaveFormat.Pptm);
}
Витягніть макроси VBA з PowerPoint за допомогою C#
Aspose.Slides for .NET також дозволяє видобувати модулі VBA з проектів VBA в презентаціях PowerPoint. Нижче наведено кроки для виконання цієї операції.
- Спочатку завантажте презентацію PowerPoint із підтримкою макросів за допомогою класу Presentation.
- Перевірте, чи властивість Presentation.VbaProject не має значення null.
- Перегляньте кожен IVbaModule у колекції Presentation.VbaProject.Modules.
- Нарешті, витягніть вихідний код за допомогою властивості IVbaModule.SourceCode.
У наведеному нижче прикладі коду показано, як отримати макроси PowerPoint VBA за допомогою C#.
// Завантажити презентацію
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);
}
}
}
Видаліть макроси PowerPoint VBA
Ви також можете видалити певний макрос VBA з презентації PowerPoint. Для цього ви отримаєте доступ і видалите модуль VBA за його індексом із проекту VBA. Нижче наведено кроки для виконання цієї операції.
- Спочатку завантажте презентацію PowerPoint із підтримкою макросів за допомогою класу Presentation.
- Видаліть модуль VBA за індексом за допомогою методу Presentation.VbaProject.Modules.Remove(Presentation.VbaProject.Modules[0]).
- Нарешті збережіть оновлену презентацію за допомогою методу Presentation.Save(string, SaveFormat.Pptm).
У наведеному нижче прикладі коду показано, як видалити макрос PowerPoint VBA.
// Завантажити презентацію
using (Presentation presentation = new Presentation("Presentation.pptm"))
{
// Видаліть модуль VBA
presentation.VbaProject.Modules.Remove(presentation.VbaProject.Modules[0]);
// Зберегти презентацію
presentation.Save("RemovedVBAMacros.pptm", SaveFormat.Pptm);
}
Отримайте безкоштовну ліцензію API
Ви можете спробувати Aspose.Slides for .NET без обмежень оцінювання, надіславши запит на тимчасову ліцензію.
Висновок
У цій статті ви дізналися, як працювати з макросами PowerPoint VBA за допомогою C#. Зокрема, ви бачили, як додавати, видобувати та видаляти макроси VBA в презентаціях PowerPoint. Щоб ознайомитися з іншими функціями API, ви можете переглянути документацію. Крім того, ви можете сміливо повідомляти нам про свої запити через наш форум.
Дивись також
Порада. Ви можете перевірити Aspose БЕЗКОШТОВНА веб-програма для видалення макросів.