기본적인 페이지 삽입으로도 페이지 삽입은 충분히 할 수 있다.
문제는 내가 원하는 페이지들에만 페이지를 삽입하고 싶을 때 생긴다.
excel은 visual basic을 이용한 코딩을 하여 커스터마이징이 가능하다.
파워포인트에도 visual basic이 지원되므로 커스터마이징이 가능할 것 같아서 검색했다.
위 포스팅의 코드를 내 입맛에 맞게 변경했다.
슬라이드 우측 하단에 페이지를 표시한다.
1. 파일 클릭
2. 옵션 클릭
3. 개발 도구 체크
4. 개발 도구 클릭 후 Visual Basic 클릭
5. 삽입 -> 모듈 선택
6. 아래 코드를 복사 & 붙여넣기
Option Explicit
Sub pptx_page_numbering()
Dim i As Long, cnt As Long
Dim sld_height As Long, sld_width As Long
Dim mySlide As Slide, myShp As Shape
Dim page_style As String
'디버그 확인 방법
'보기 -> 직접 실행창 클릭하면 화면 하단에 나타남
'만약 나타나지 않는다면 보기->도구모음->디버그 클릭 후 다시 직접 실행창 확인
Debug.Print ActivePresentation.SlideMaster.Width '슬라이드의 너비(가로px) (780 나옴)
Debug.Print ActivePresentation.SlideMaster.Height '슬라이드의 높이(세로px) (540 나옴)
For i = 3 To (ActivePresentation.Slides.Count - 1)
For Each myShp In ActivePresentation.Slides(i).Shapes
If myShp.Name Like "*" & "myShp" & "*" Then
myShp.Delete
End If
Next myShp
'2개의 페이지 번호를 넣기 위해 아래 절취선 부분을 반복
'동일한 페이지 번호를 만들어주되 Left, Top 좌표만 변경
'--------------------------------------------------------------
cnt = cnt + 1 '실제 삽입되는 번호 카운팅
ActivePresentation.Slides(i).Select
With ActivePresentation.Slides(i).Shapes.AddShape _
(Type:=msoShapeRectangle, Left:=680, Top:=500, Width:=100, Height:=20)
.Name = "myShp" & cnt '번호 개체에 식별할 수 있는 ID 부여
'매크로를 통해 삽입한 임의의 개체임을 나타내기 위해
'모든 페이지번호 개체에 "myShp" 이름을 부여 -> 한꺼번에 지울 때 활용
.TextFrame.TextRange.Text = "" & cnt & "/" & (ActivePresentation.Slides.Count - 3) '번호 삽입
'아래는 번호 서식
.TextFrame.HorizontalAnchor = msoAnchorCenter
.TextEffect.Alignment = msoTextEffectAlignmentCentered
.TextFrame.TextRange.Font.Color.RGB = RGB(145, 145, 145)
.TextFrame.TextRange.Font.Size = 20
.TextFrame.TextRange.Font.Name = "에스코어 드림 7 ExtraBold"
.Line.Transparency = 1
.Fill.Transparency = 1
End With
Next i
cnt = 0
End Sub
7. 화면 상단의 녹색 화살표 선택
8. Visual Basic 화면을 끄고 파워포인트 화면 확인해보기
'프로그래밍' 카테고리의 다른 글
[C# 차트참고] var과 linq 보단 list와 linq를 쓰는 것이 더 빠르다 (0) | 2024.06.17 |
---|---|
C# 카카오 로그인 및 나에게 메시지 보내기 (0) | 2024.05.03 |
파이썬 기초 문법 및 API와 챗봇 (0) | 2023.08.04 |
(Python) 네이버톡톡, 카카오챗봇 메시지 2개 이상 동시에 보내기(여러 개 보내기) (0) | 2023.08.04 |
파이썬기초+API (0) | 2023.07.31 |