본문 바로가기
■ 칼퇴를 위한 VBA : 사례/- VBA for 파워포인트

파워포인트 VBA: 슬라이드 마스터 설정하기

by 포탈메이커 2023. 7. 2.

파워포인트 VBA: 슬라이드 마스터 설정하기

슬라이드 마스터는 파워포인트에서 슬라이드의 디자인과 레이아웃을 통일할 수 있는 기능입니다. VBA(Visual Basic for Applications)를 활용하면 슬라이드 마스터에 대한 세부 설정을 자동화할 수 있습니다. 이번 포스팅에서는 파워포인트 VBA를 사용하여 슬라이드 마스터를 설정하는 방법에 대해 알아보겠습니다.

슬라이드 마스터 선택하기

먼저 VBA 코드를 작성하기 전에, 슬라이드 마스터를 선택해야 합니다. 아래의 코드를 사용하여 슬라이드 마스터를 선택할 수 있습니다.

ActivePresentation.SlideMaster

위 코드는 현재 활성화된 프리젠테이션의 슬라이드 마스터를 나타냅니다.

슬라이드 마스터 속성 변경하기

파워포인트 VBA를 사용하여 슬라이드 마스터의 속성을 변경할 수 있습니다. 예를 들어, 제목 텍스트의 글꼴을 변경하고자 한다면 아래의 코드를 사용할 수 있습니다.

ActivePresentation.SlideMaster.Shapes(1).TextFrame.TextRange.Font.Name = "Arial"

위 코드에서 Shapes(1)은 슬라이드 마스터의 첫 번째 모양(shape)을 나타냅니다. 이는 일반적으로 제목 텍스트에 해당합니다. TextFrame.TextRange.Font.Name은 해당 모양의 글꼴(font)을 변경하는 속성입니다. 위의 예시에서는 Arial 글꼴로 변경하도록 설정되어 있습니다. 만약 다른 속성, 예를 들어 글꼴 크기를 변경하고 싶다면 TextFrame.TextRange.Font.Size 속성을 사용할 수 있습니다.

슬라이드 마스터의 다른 속성을 변경하고 싶다면 해당 속성의 VBA 속성 이름을 찾아서 사용하면 됩니다. 예를 들어, 배경색을 변경하고 싶다면 SlideMaster.Background.Fill.ForeColor.RGB 속성을 사용할 수 있습니다.

슬라이드 마스터에 레이아웃 추가하기

VBA를 사용하여 슬라이드 마스터에 새로운 레이아웃을 추가할 수도 있습니다. 아래의 코드 예시를 참고해보세요.

Dim NewLayout As CustomLayout
Set NewLayout = ActivePresentation.SlideMaster.CustomLayouts.Add(Index:=10)

위 코드는 슬라이드 마스터에 새로운 레이아웃을 추가합니다. CustomLayouts.Add 메소드를 사용하여 새로운 레이아웃을 생성한 후, 반환된 레이아웃 객체를 NewLayout 변수에 할당합니다. Index 매개변수를 사용하여 레이아웃의 위치를 지정할 수 있습니다. 위의 예시에서는 10번째 위치에 새로운 레이아웃을 추가하도록 설정되어 있습니다.

슬라이드 레이아웃에 컨트롤 추가하기

슬라이드 마스터의 레이아웃에 컨트롤(텍스트 상자, 이미지 상자 등)을 추가하고 싶다면 아래의 코드를 사용할 수 있습니다.

Dim NewShape As Shape
Set NewShape = NewLayout.Shapes.AddShape(Type:=msoShapeRectangle, Left:=100, Top:=100, Width:=200, Height:=100)

위 코드는 슬라이드 마스터의 레이아웃에 사각형 모양의 새로운 컨트롤을 추가합니다. Shapes.AddShape 메소드를 사용하여 원하는 모양의 컨트롤을 추가한 후, 반환된 컨트롤 객체를 NewShape 변수에 할당합니다. Left, Top, Width, Height 매개변수를 사용하여 컨트롤의 위치와 크기를 정할 수 있습니다.

이와 같은 방법으로 텍스트 상자, 이미지 상자 등 다른 컨트롤을 추가할 수 있습니다.

마무리

이번 포스팅에서는 파워포인트 VBA를 사용하여 슬라이드 마스터를 설정하는 방법에 대해 알아보았습니다. 슬라이드 마스터를 VBA로 자동화하면 슬라이드의 디자인과 레이아웃을 일괄적으로 변경할 수 있습니다. VBA를 사용하여 슬라이드 마스터를 설정하면 시간을 절약할 수 있으며, 동일한 디자인의 슬라이드를 쉽게 생성할 수 있습니다. 추가적인 VBA 속성과 메소드를 찾아보면 더 다양한 슬라이드 마스터 설정을 할 수 있습니다.