ChatGPT로 PPT 리본 옵션 기반 자동화: PDF 생성부터 메일 폼까지!

소개

PowerPoint 작업 중, 리본 메뉴에서 특정 옵션을 클릭했을 때:

  • 해당 화면을 캡처하고,

  • PDF로 변환한 뒤,

  • 각 옵션에 따라 맞춤 메일 문구를 포함한 메일용 폼까지 자동으로 생성하는 흐름을 만들고자 했습니다.

업무 흐름이 너무 반복적이어서, 이를 GPT로 자동화하면 시간과 실수를 줄일 수 있을 거라 기대했습니다. 😊

진행 방법

사용 도구

  • ChatGPT (GPT-4 기준)

  • 추가 도구 없이 VBA + Word 객체를 활용하여 클립보드 제어

구현 흐름

  1. 사용자가 PPT 리본에서 특정 옵션 선택

  2. 해당 옵션이 적용된 화면만 슬라이드로 추출

  3. 슬라이드 → PDF 자동 변환

  4. 옵션에 따른 메일 문구 자동 생성

  5. 최종 메일 폼을 Word 객체를 활용해 클립보드에 복사

  6. 사내 메일 작성 페이지 자동 열기

사용한 기술 요소

  • VBA에서 UserForm으로 리본 UI 구성

  • 각 옵션은 Caption 값을 기준으로 조건 분기

  • PPT 슬라이드 삭제 및 복사 로직으로 PDF 슬림화

  • Word Application 객체를 활용해 텍스트 클립보드 처리

  • Scripting.Dictionary로 옵션별 안내 문구 템플릿 구성

사용한 프롬프트 예시

선택한 리본 옵션의 캡션 값이 들어왔을 때,
메일 본문 중 해당 옵션 설명 부분을 아래 템플릿 형식으로 바꿔줘.
(메일 전체 구조는 고정)

[캡션]
- 항목별 변경 사항
- 검사 구성의 변화
...

결과와 배운 점

  • 문제점: 리본 옵션의 CAPTION 값과 실제 메일 문구가 완전히 일치하지 않아 문구 삽입 오류 발생 ❌

  • 해결: 중간 매핑을 위한 NormalizeCaption() 함수를 추가해 논리적 이름으로 정규화 후 템플릿 적용

  • 기억할 점:

    • 프롬프트와 실제 데이터가 약간이라도 어긋나면 자동화가 실패할 수 있음

    • 작은 오차도 매칭 로직에서 큰 장애가 되므로 매핑 테이블은 최대한 명시적으로 작성할 것

다음 계획

  • 현재는 GPT 단독 활용이지만, 다음에는 Claude와의 비교도 진행해볼 예정

  • 각 항목별 변경 텍스트를 GPT가 직접 생성하도록 개선 가능성 탐색

  • 자동화 전 과정을 버튼 하나로 실행하는 방향으로 발전 중

도움 받은 글 (옵션)

  • 없음 (GPT 단독 구현)

뉴스레터 무료 구독