원래 슬라이드쇼 설정은 각 파일마다 저장됩니다.

 

따라서 슬라이드 쇼를 시작하면 해당 파일의 설정대로 슬라이드쇼가 시작됩니다.

특히 설정된 시간 사용에 체크된 경우 자동으로 슬라이드가 넘어가버립니다.

모든 슬라이드쇼가 '수동'으로 전환되도록 설정하고 싶은 경우가 있습니다.

'발표자가 진행' 옵션도 설정하려고 합니다.

 

VBA로 쇼를 시작하게 하면 정해진 설정대로 쇼를 시작할 수 있습니다.

(실행하려면 Alt-F11 창에서 삽입 > 모듈 추가하고 아래 코드를 넣고 F5로 실행합니다. )

그러면 쇼를 시작하되 '발표자가 진행'으로 수동 전환으로 실행합니다.

 

Sub mySlideShow()

    With ActivePresentation.SlideShowSettings
    
        .ShowType = ppShowTypeSpeaker   '발표자가 진행
        .AdvanceMode = ppSlideShowManualAdvance '수동 전환 
        .Run    '쇼 시작
        
    End With
    
End Sub

 

 

모든 파일이 위와 같이 시작되게 하려면 추가기능으로 만들어야 합니다.

SlideShowBegin 이벤트를 감시해서 쇼가 시작할 때마다 위 코드를 실행해줄 수 있습니다.

 

Class1 코드: 이벤트를 감시하는 역할

Public WithEvents App As Application

Sub App_SlideShowBegin(ByVal SSW As SlideShowWindow)

    Module1.mySlideShowSetting SSW
    
End Sub

 

 

Module1의 코드: 슬라이드쇼가 시작할 때 mySlideShowsetting을 실행해서

기존 쇼를 종료하고 정해진 설정대로 쇼를 다시 시작

Dim cls As New Class1

'추가기능이 로드될 때 자동실행
Sub Auto_Open()

    Set cls.App = Application
    
End Sub

'슬라이드쇼를 특정 설정으로 재시작
Sub mySlideShowSetting(oSSW As SlideShowWindow)

    With ActivePresentation.SlideShowSettings
    	'쇼 설저이 발표자가 진행이고 수동 전환이 아닌 경우
        If .ShowType <> 1 Or .AdvanceMode <> 1 Then
            oSSW.View.Exit
            DoEvents
            
            .ShowType = ppShowTypeSpeaker   '발표자가 진행
            .AdvanceMode = ppSlideShowManualAdvance '수동 전환
            .Run    '쇼 시작
        End If
    End With
    
End Sub

 

 

 

1.첨부파일을 다운 받습니다.

2. 파일 속성에서 '차단해제'체크하고 확인을 누릅니다.

3. 파일을 더블 클릭해서 열고 매크로 컨텐츠를 허용합니다.

4. 다른이름으로 저장에서 확장자를 .ppam 으로 변경합니다. 폴더가 바뀌는데 그대로 둡니다.

5. 파워포인트 파일 > 옵션 > 추가기능 > PowerPoint추가기능으로 '이동'합니다.

6. '새로 추가' 버튼을 누르고 SlideShowSetting1.ppam 을 불러옵니다.

완료입니다.

이제 새로운 파일을 열고 슬라이드 쇼 설정을 전환 > 설정된 시간으로 바꿔도 쇼를 시작하면 다시 '수동'으로 바뀌게 됩니다. 보기 형식을 '웹 형식'이나 '대화형 자동진행'으로 바꿔도 '발표자가 진행'으로 다시 바뀝니다.

나중에 쓸 일이 없을 때는 추가기능에 체크를 해제하거나 '제거'를 눌러주면 됩니다.

 

SlideShowSetting1.pptm
0.40MB