VBA 매크로는 PowerPoint 프레젠테이션의 다양한 기능을 자동화하는 데 사용됩니다. 예를 들어 VBA를 사용하여 반복적인 작업을 수행하고 차트 및 양식 등을 생성할 수 있습니다. 이 기사에서는 프로그래밍 방식으로 PowerPoint VBA 매크로를 사용하는 방법을 배웁니다. 특히 이 기사에서는 C#을 사용하여 PowerPoint 프레젠테이션에서 VBA 매크로를 추가, 추출 또는 제거하는 방법을 다룹니다.
- PowerPoint VBA 매크로용 C# API
- C#을 사용하여 PowerPoint 프레젠테이션에 VBA 매크로 추가
- PowerPoint 프레젠테이션에서 VBA 매크로 추출
- PowerPoint 프레젠테이션에서 VBA 매크로 제거
- 무료 API 라이선스 받기
PowerPoint VBA 매크로용 C# API
.NET용 Aspose.Slides는 C#을 사용하여 PowerPoint 프레젠테이션을 만들고 편집하고 변환할 수 있는 기능이 풍부한 API입니다. 또한 API를 사용하면 VBA 매크로를 원활하게 사용할 수 있습니다. API를 사용하려면 해당 DLL을 다운로드하거나 NuGet을 사용하여 설치할 수 있습니다.
PM> Install-Package Aspose.Slides.NET
C#을 사용하여 PowerPoint 프레젠테이션에 VBA 매크로 추가
다음은 C#을 사용하여 PowerPoint 프레젠테이션에 VBA 매크로를 추가하는 단계입니다.
- 먼저 Presentation 클래스의 인스턴스를 만들어 PowerPoint 프레젠테이션을 로드합니다.
- Presentation.VbaProject 속성에 새 VbaProject를 할당합니다.
- Presentation.VbaProject.Modules.AddEmptyModule(string) 메서드를 사용하여 빈 VBA 모듈을 추가합니다.
- 추가된 모듈의 참조를 IVbaModule 개체로 가져옵니다.
- IVbaModule.SourceCode 속성을 사용하여 VBA 모듈에 소스 코드를 추가합니다.
- Microsoft Office에 대한 참조를 생성하고 Presentation.VbaProject.References 컬렉션에 추가합니다.
- 마지막으로 Presentation.Save(string, SaveFormat.Pptm) 메서드를 사용하여 프레젠테이션 파일을 저장합니다.
다음 코드 샘플은 C#을 사용하여 PowerPoint 프레젠테이션에 VBA 매크로를 추가하는 방법을 보여줍니다.
// 프레젠테이션 로드
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);
}
C#을 사용하여 PowerPoint에서 VBA 매크로 추출
.NET용 Aspose.Slides를 사용하면 PowerPoint 프레젠테이션의 VBA 프로젝트에서 VBA 모듈을 추출할 수도 있습니다. 다음은 이 작업을 수행하는 단계입니다.
- 먼저 Presentation 클래스를 사용하여 매크로 사용 PowerPoint 프레젠테이션을 로드합니다.
- Presentation.VbaProject 속성이 null이 아닌지 확인합니다.
- Presentation.VbaProject.Modules 컬렉션의 각 IVbaModule를 반복합니다.
- 마지막으로 IVbaModule.SourceCode 속성을 사용하여 소스 코드를 추출합니다.
다음 코드 샘플은 C#을 사용하여 PowerPoint VBA 매크로를 추출하는 방법을 보여줍니다.
// 프레젠테이션 로드
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 매크로 제거
PowerPoint 프레젠테이션에서 특정 VBA 매크로를 제거할 수도 있습니다. 이를 위해 VBA 프로젝트에서 해당 인덱스로 VBA 모듈에 액세스하고 제거합니다. 다음은 이 작업을 수행하는 단계입니다.
- 먼저 Presentation 클래스를 사용하여 매크로 지원 PowerPoint 프레젠테이션을 로드합니다.
- Presentation.VbaProject.Modules.Remove(Presentation.VbaProject.Modules[0]) 메서드를 사용하여 인덱스별로 VBA 모듈을 제거합니다.
- 마지막으로 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 라이선스 받기
임시 라이선스를 요청하여 평가 제한 없이 .NET용 Aspose.Slides를 사용해 볼 수 있습니다.
결론
이 문서에서는 C#을 사용하여 PowerPoint VBA 매크로로 작업하는 방법을 배웠습니다. 특히 PowerPoint 프레젠테이션에서 VBA 매크로를 추가, 추출 및 제거하는 방법을 살펴보았습니다. API의 다른 기능을 탐색하려면 문서를 참조하십시오. 또한 포럼을 통해 문의 사항을 자유롭게 알려주세요.
또한보십시오
팁: Aspose 무료 매크로 제거 웹 앱를 확인하는 것이 좋습니다.