파워포인트 10

[파워포인트 VBA] 차트 데이터레이블 일괄 변경 매크로

매크로 설명 파워포인트 차트의 데이터레이블 설정을 일괄적으로 변경하는 매크로이다. 특히 데이터레이블 위치를 임의로 변경하는 노가다를 해야하는 경우에 유용할 것 같다. 이 매크로는 엑셀을 통해 파워포인트의 차트를 제어하는 방식으로 작동한다. 파워포인트의 차트 개체모델에 접근하는 방식과 엑셀의 차트 개체모델에 접근하는 방식이 다르기 때문에, 엑셀에 적용하는 경우에는 오류가 발생 수도 있다. 매크로 실행 동영상 VBA Code Option Explicit Sub chart_batch() Dim pptRef As PowerPoint.Application Dim curSlide As Long Dim shName As String Dim objChart As PowerPoint.Chart Dim seriesCnt,..

[파워포인트 VBA] 그림 크기 일괄 변경하기 (엑셀에서 제어)

매크로 설명 기존 포스팅에서 이와 유사한 매크로를 다루었지만, 사소하지만 꽤나 중대한 문제가 있었기에 리뉴얼해서 올린다. 사소하지만 꽤나 중대한 문제라 함은, 기존에 만든 매크로의 경우 파워포인트 프로그램에서 실행된다. 이 경우 해당 PPT 파일을 매크로가 사용가능한 .pptm으로 변경하고 코드를 복붙하고 실행해야 하는 번거로움이 있었다. 이를 해결하기 위해 엑셀을 통해 PPT 파일을 제어하도록 변경한 매크로이다. 정상적으로 작동하려면 PowerPoint Object Library 참조를 추가해주어야 한다. VBA 편집기 화면 -> 도구 -> 참조 -> Microsoft PowerPoint ##.# Object Library를 찾아서 체크 -> 확인 매크로 실행 동영상 VBA Code Option Exp..

사진 속 중간회색 찾기(화이트밸런스 맞추기) 매크로

화이트 밸런스를 눈대중으로 맞추기 어려운 경우에 가끔 사용하려고 제작했다. 사진의 각 픽셀을 건너뛰면서 컬러 샘플링을 하고, 지정한 검출 한계(변수: thr)만큼의 회색인 경우 샘플러를 찍어두는 로직이다. 사진 크기가 클수록 검출하는 데 오래걸리기 때문에 건너뛰는 픽셀(변수: stepPx)수를 조금씩 변경하면서 찾는 편이 빠르다. 중간회색을 찾은 이후에는 Curve 툴로 회색지점(또는 회색이 되어야 하는 지점)을 찍어주어 화이트밸런스를 맞출 수 있다. VBA Code Option Explicit Sub auto_gray_finding() Dim appRef As Photoshop.Application Dim docRef As Document Dim lyrRef As ArtLayer Dim lyrs As ..

[파워포인트] 같은 창 복제해서 띄우고 편집(검토)하기

파워포인트 창 복제(Ctrl + Shift + N) 기능 # 파워포인트로 보고서 작업을 하다보면 특정 페이지를 참고해서 종합하는 페이지를 쓸 때가 있다.# 이 경우 슬라이드를 왔다갔다 하면서 작업하는 게 여간 불편한 게 아니다.# 클래식(?)한 작업 방식은 파워포인트를 새로 실행해서 참고하는 장을 복사해놓고 종합 장을 쓰는 방식이다.# 이 경우에 참고하는 장을 수정해야 한다면 그 페이지로 가서 수정하고 다시 원래 페이지로 와서 종합 장을 써야한다. 한마디로, 귀찮다.# 이 때 창 복제 기능은 매우 유용하다.# 똑같은 새로운 창을 띄우지만 서로 연동되어 있어서 내용을 수정하면 원본 내용에 반영된다. # 파워포인트에서 Ctrl + Shift + N을 실행하면 다음과 같이 똑같은 내용의 새로운 창이 하나 생성..

MS Office 일반 2017.12.18

파워포인트에 사용된 이미지 일괄 저장 매크로

매크로 설명 파워포인트 슬라이드에 있는 그림들을 일괄적으로 저장하는 코드를 응용. 파워포인트에 사용된 모든 이미지를 특정 폴더 안에 그 폴더 이름으로 저장하는 매크로이다. 매크로 실행 동영상 VBA Code Option Explicit Sub picSaveAs() Dim i As Long, cnt As Long Dim savePath As String, folderName As String Dim pic As Shape Dim targetFormat As String targetFormat = ".PNG" '그림을 저장할 형식은 PNG With Application.FileDialog(msoFileDialogFolderPicker) .Show If .SelectedItems.Count = 0 Then '..

[엑셀] 키워드 분석 매크로 (작성중)

여러 단어들에 포함된 키워드를 뽑아내는 매크로이다.2개짜리 단어, 3개짜리 단어 등 단어 길이만큼 모조리 검색해서 빈도수별로 키워드 순위를 알려준다.예를 들어, 다음과 같은 대학 학과 리스트에 매크로를 적용하면{수학과, 수학교육학과, 수학교육과} 수학 = 3 교육 = 2 학교 = 2 수학교 = 2 학교육 = 2 수학교육 = 2위와 같은 형식으로 빈도를 뽑아낸다.※ 아직 VBA 코드를 수정하지 않아 가져다 쓰기에는 무리가 있다. (현재는 말도 안되게 무식한 코드이다.)혹시 테스트를 해볼 요량이면, 시트명이 Sheet1인 시트의 B열에 데이터를 나열하고 실행하면 된다. 엑셀 키워드 빈도 분석 VBA 코드 Option Explicit Dim i As Long, j As Long, k As Long Dim cn..

VBA Macro/VBA Excel 2017.10.19

[MS 일반] 개체모델

개체모델(Object Model)이란? 개체모델(Object Model)은 특정 개체의 모든 구성 요소를 구분하고 분류하기 위한 일종의 틀이다. 하나의 건물을 개체모델의 예로 들어보자.여기 관악구청이 있다. 관악구청은 여러 개의 부서로 나눠질 것이고,각 부서마다 팀이 있고 각 팀마다 책상, 의자, 컴퓨터, 사람 등 무수한 개체가 있을 것이다.누구든지 관악구청의 서무과의 경리팀에 있는 의자에 앉으려면 관악구청 > 서무과 > 경리팀 > 의자 순서로 접근해야 한다. 이를 VBA의 개체모델 접근 방식으로 바꾸면,관악구청.과(서무).팀(경리).의자(1) 과 같은 형식이 된다. MS Office의 개체 모델은 작성자가 이해하는 한 이와 같은 방식으로 작동된다. 파워포인트의 특정 개체에 접근하는 코드를 살펴보자.Ac..

MS Office 일반 2017.10.18

파워포인트 그림 크기 일괄 변경 매크로 #1

매크로 설명 파워포인트 이미지 속성 일괄 변경 매크로이다. 모든 슬라이드의 삽입 이미지만 따로 크기를 변경해준다. 그림의 가로/세로 비율이 중요하다면 LockAspectRatio 속성을 msoTrue로 잡아주어야 한다. 매크로 실행 동영상(실행방법 포함) VBA Code Option Explicit Dim i As Long Dim pic As Shape Dim last_slide As Slide Sub pic_change() For i = 1 To ActivePresentation.Slides.Count For Each pic In ActivePresentation.Slides(i).Shapes If pic.Type = msoPicture Then '그림 파일이면 With pic .LockAspectRa..

파워포인트 슬라이드 번호 삽입 매크로

슬라이드 바닥글을 활용하여 페이지번호를 삽입하는 기능이 있지만, 첫째 슬라이드가 아닌 임의의 슬라이드에서 임의의 번호로 시작하는 기능은 없다. 더욱이 슬라이드 마스터가 익숙하지 않은 사람이라면 헷갈리기 쉽다. 이 매크로는 슬라이드 페이지 번호를 자동으로 삽입해주는 매크로이다. 번호의 서식은 자유로이 변경할 수 있고, 빈 슬라이드를 간지로 쓰는 경우에는 레이아웃 인덱스를 지정해서 번호가 붙는것을 방지할 수 있다. VBA Code Option Explicit 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 Sub pptx_p..

글꼴(폰트)이 설치된 슬라이드 찾기 매크로

S Y N O P S I S #VBA로 폰트 찾기 간혹 PT 작업 중에 저장하면 폰트 때문에 저장할 수 없을 때가 있다. 슬라이드가 많아지면 보통 슬라이드를 복제해서 쓰는 경우가 많기 때문에 내가 사용한 글꼴이 어떤 슬라이드에 있는지 일일이 찾아야 한다. 자체적으로 글꼴을 일괄적으로 변환해주는 기능이 있는데 글꼴이 설치되어 있어야 가능하다. 아래 매크로는 '특정 글꼴이 사용되고 있는 슬라이드를 찾고 싶은 경우'에 사용한다. 글꼴을 입력하면 첫번째부터 마지막 슬라이드까지 내가 검색한 글꼴이 사용되는 슬라이드 번호를 알려주고, 해당 위치로 이동한다. VBA Code Option Explicit Dim myShp As Shape Dim slide_num As Long Dim myFont As Variant D..