소개
PowerPoint 작업 중, 리본 메뉴에서 특정 옵션을 클릭했을 때:
해당 화면을 캡처하고,
PDF로 변환한 뒤,
각 옵션에 따라 맞춤 메일 문구를 포함한 메일용 폼까지 자동으로 생성하는 흐름을 만들고자 했습니다.
업무 흐름이 너무 반복적이어서, 이를 GPT로 자동화하면 시간과 실수를 줄일 수 있을 거라 기대했습니다. 😊
진행 방법
사용 도구
ChatGPT (GPT-4 기준)
추가 도구 없이 VBA + Word 객체를 활용하여 클립보드 제어
구현 흐름
사용자가 PPT 리본에서 특정 옵션 선택
해당 옵션이 적용된 화면만 슬라이드로 추출
슬라이드 → PDF 자동 변환
옵션에 따른 메일 문구 자동 생성
최종 메일 폼을 Word 객체를 활용해 클립보드에 복사
사내 메일 작성 페이지 자동 열기
사용한 기술 요소
VBA에서 UserForm으로 리본 UI 구성
각 옵션은
Caption값을 기준으로 조건 분기PPT 슬라이드 삭제 및 복사 로직으로 PDF 슬림화
Word Application 객체를 활용해 텍스트 클립보드 처리
Scripting.Dictionary로 옵션별 안내 문구 템플릿 구성
사용한 프롬프트 예시
선택한 리본 옵션의 캡션 값이 들어왔을 때,
메일 본문 중 해당 옵션 설명 부분을 아래 템플릿 형식으로 바꿔줘.
(메일 전체 구조는 고정)
[캡션]
- 항목별 변경 사항
- 검사 구성의 변화
...
결과와 배운 점
문제점: 리본 옵션의 CAPTION 값과 실제 메일 문구가 완전히 일치하지 않아 문구 삽입 오류 발생 ❌
해결: 중간 매핑을 위한
NormalizeCaption()함수를 추가해 논리적 이름으로 정규화 후 템플릿 적용기억할 점:
프롬프트와 실제 데이터가 약간이라도 어긋나면 자동화가 실패할 수 있음
작은 오차도 매칭 로직에서 큰 장애가 되므로 매핑 테이블은 최대한 명시적으로 작성할 것
다음 계획
현재는 GPT 단독 활용이지만, 다음에는 Claude와의 비교도 진행해볼 예정
각 항목별 변경 텍스트를 GPT가 직접 생성하도록 개선 가능성 탐색
자동화 전 과정을 버튼 하나로 실행하는 방향으로 발전 중
도움 받은 글 (옵션)
없음 (GPT 단독 구현)