ChatGPT를 활용한 오피스 VBA 업무 자동화
Excel VBA란?
1
VBA 정의
Visual Basic for Applications
2
Excel에서의 역할
스프레드시트 작업 자동화 및 확장
3
사용 이유
반복 작업 자동화, 사용자 정의 기능 생성
[개발 도구] 탭 표시하기
  • [파일] - [옵션]을 클릭합니다.
  • [Excel 옵션] 대화상자에서 [리본 사용자 지정]을 클릭하고 오른쪽 '리본 메뉴 사용자 지정' 리스트에서 [개발 도구]를 체크한 다음 [확인]을 클릭합니다
VBA 편집기 소개
접근 방법
Alt + F11 키 사용
주요 구성 요소
프로젝트 탐색기, 속성 창, 코드 창
매크로 녹화 기능 (1)
1
1단계
개발자 탭에서 '매크로 기' 선택
2
2단계
매크로 이름 지정 및 설명 입력
3
3단계
원하는 작업 수행
매크로 녹화 기능 (2)
1
4단계
'매크로 중지' 버튼 클릭
2
5단계
VBA 편집기에서 녹화된 코드 확인
3
실습
VBA 편집기 단축키
Alt + F8 : 매크로의 메뉴의 실행 Alt + F11 : Visual Basic 편집기를 기동한다 Alt + F11 : Excel을 기동한다 Alt + Q : 종료하고 Excle로 돌아간다 Ctrl + → : 오른쪽 단어로 이동한다 Ctrl + ← : 왼쪽 단어로 이동한다 Ctrl + ↑ : 앞 프로시저 Ctrl + ↓ : 다음 프로시저 Ctrl + A : 모두 선택 Ctrl + Alt + A : 입력 후보 Ctrl + Break : 중단 Ctrl + Delete : 단어의 끝까지 삭제한다 Ctrl + E : 파일의 내보내기 Ctrl + End : 모듈의 끝으로 이동한다 Ctrl + F : 찾기(검색) Ctrl + F2 : 북 마크를 바꾸다 Ctrl + F8 : 커서의 앞까지 실행 Ctrl + H : 이미디에이트 윈도 Ctrl + G : 교체 Ctrl + Home : 모듈의 처음으로 이동한다 Ctrl + I : 퀵 세트 Ctrl + J : 속성/메서드의 일람 Ctrl + N : 파일 가져오기 Ctrl + P : 인쇄 Ctrl + PgDn : 한 화면 아래로 Ctrl + PgUp : 한 화면 위로 Ctrl + Q : 반복한다 Ctrl + R : 프로젝트 탐색기 Ctrl + S : 저장 Ctrl+Shift+F2 : 원래의 위치로 이동 Ctrl+Shift+F9 : 모든 브레이크 포인트 해체 Ctrl+Shift+F8 : 스텝 아웃 Ctrl+Shift+I : 피라미터 힌트 Ctrl+Shift+J : 상수의 일람 Ctrl+Spacebar : 입력 후보 Ctrl + V : 붙이기 Ctrl + W : 조사식의 편집 Ctrl + Y : 현재 행을 삭제한다 Ctrl + Z : 원래대로 돌아간다
프로시저
프로시저는 한줄의 코드나 여러 줄의 코드로 작성된 작은 단위의 묶음입니다.
  • Sub 프로시저: VBA에서 가장 기본적인 프로시저로, 독립적인 작업을 수행하는 코드 블록입니다. Sub 프로시저는 특정 이벤트 발생 시 실행되거나 프로그래밍을 통해 직접 호출할 수 있습니다.
  • Function 프로시저: Sub 프로시저와 유사하지만 입력 데이터를 받아 결과 값을 반환하는 기능입니다. 계산이나 데이터 처리와 같은 용도로 사용됩니다.
  • 매개변수와 반환 값: Function 프로시저는 입력 매개변수를 받을 수 있고, 결과 값을 반환할 수 있습니다. Sub 프로시저는 매개변수를 받을 수 있지만 반환 값이 없습니다.
VBA SCRIPT
Sub 처음만드는SUB프로시저() Dim 변수1 As String 변수1 = "홍길동" MsgBox "안녕하세요? " & 변수1 & "님" MsgBox "안녕하세요? " + 변수1 + "님" End Sub
Sub variableFirstDemo() Dim 변수1 As Long Dim 변수2 As String Dim 변수3 As String 변수1 = 20 변수2 = "홍길동" 변수3 = 변수2 & "님의 나이는 " & 변수1 & "세 입니다" MsgBox 변수3 End Sub
Sub variableSecondDemo() Dim 변수1 As Long 변수1 = 20 Dim 변수2 As String 변수2 = "홍길동" Dim 변수3 As String 변수3 = 변수2 & "님의 나이는 " & 변수1 & "세 입니다" MsgBox 변수3 End Sub
1. VBA와 ChatGPT 조합의 장점
매일 반복하는 지루한 업무가 있으신가요? 엑셀 데이터 입력이나 문서 복사-붙여넣기 같은 작업은 컴퓨터가 대신할 수 있습니다.
VBA(Visual Basic for Applications)는 마이크로소프트 오피스에 자동화 명령을 내리는 언어입니다. 코딩이 어렵게 느껴진다면, ChatGPT가 도움이 됩니다.
ChatGPT와 VBA의 조합은 요리 초보자에게 레시피를 알려주는 요리사와 같습니다. 원하는 작업을 설명하면 ChatGPT가 적합한 VBA 코드를 제공해 줍니다.
이 강의를 통해 배울 내용과 성취할 수 있는 목표
이 강의를 마치면 여러분은:
  1. ChatGPT로 VBA 코드를 쉽게 생성할 수 있습니다
  1. 엑셀, 워드, 파워포인트에서 반복 작업을 자동화할 수 있습니다
  1. 업무 시간을 절약하고 오류를 줄일 수 있습니다
  1. 효율적인 작업 방식으로 생산성을 높일 수 있습니다
  1. 프로그래밍 경험 없이도 자동화 프로그램을 만들 수 있습니다
필요한 준비물과 사전 지식
준비물:
  • Microsoft Office (엑셀, 워드, 파워포인트)
  • ChatGPT 계정 (무료 버전 가능)
사전 지식:
  • 기본적인 오피스 프로그램 사용법
  • 프로그래밍 지식 불필요
실습 환경 설정 방법
오피스에서 VBA 환경 설정하기:
  1. 개발자 탭 활성화하기:
  • 파일 > 옵션 > 리본 사용자 지정
  • "개발 도구" 또는 "개발자" 체크박스 선택
  • 확인 클릭
  1. 매크로 보안 설정 조정하기:
  • 개발자 탭 > 매크로 보안
  • "모든 매크로 사용" 또는 "디지털 서명된 매크로 사용" 선택
  • 실습 후 보안을 위해 "모든 매크로 사용 안 함"으로 복원 권장
이제 준비 완료! 다음 섹션에서 VBA와 ChatGPT의 기초를 알아보겠습니다.
2. ChatGPT와 VBA 기초 이해하기
VBA가 무엇인지 아주 쉽게 설명
VBA는 Visual Basic for Applications의 약자인데요, 이름이 어렵게 들릴 수 있지만 개념은 아주 간단합니다.
VBA는 컴퓨터에게 일을 시키는 말이라고 생각하시면 됩니다. 마치 로봇에게 명령을 내리는 것과 같아요!
예를 들어볼까요?
  • 평소에 우리가 마우스로 클릭하고, 키보드로 입력하는 모든 작업을
  • VBA로 "이렇게 해줘, 저렇게 해줘"라고 명령하면
  • 컴퓨터가 알아서 그 일을 척척 해주는 겁니다!
실생활에서 비유하자면:
식당에서 "비빔밥 하나 주세요"라고 주문하면, 주방에서는 밥 담고, 나물 올리고, 고추장 넣고... 등 많은 과정을 거쳐 비빔밥을 만들어 줍니다. VBA도 마찬가지예요! "월간 보고서 만들어줘"라고 명령하면, 컴퓨터가 데이터 가져오고, 계산하고, 서식 지정하고... 등의 작업을 알아서 해주는 거죠.
ChatGPT가 어떻게 VBA 코드 작성을 도울 수 있는지
프로그래밍 언어를 배우는 것은 외국어를 배우는 것과 비슷합니다. 처음에는 어렵고 시간이 많이 걸리죠.
하지만 ChatGPT가 있으면 어떨까요?
ChatGPT는 마치 24시간 대기 중인 VBA 통역사입니다:
  1. 여러분이 한국어로 "엑셀에서 A열의 데이터를 정렬해줘"라고 말하면
  1. ChatGPT가 이를 VBA 언어로 번역해서 알려줍니다
  1. 여러분은 그 코드를 복사해서 붙여넣기만 하면 됩니다!
여러분이 할 일은:
  • 자동화하고 싶은 작업을 일상 언어로 설명하기
  • ChatGPT가 제공한 코드를 복사하기
  • VBA 편집기에 붙여넣기
  • 실행하기
이렇게 간단합니다! 마치 요리 레시피를 따라 하는 것처럼 쉽게 VBA 코드를 만들 수 있어요.
매크로 보안 설정과 개발자 탭 활성화 방법
앞서 간단히 설명드렸지만, 좀 더 자세히 살펴볼게요.
개발자 탭 활성화하기 (화면 캡처와 함께)
  1. 엑셀(또는 워드, 파워포인트)을 실행합니다
  1. 왼쪽 상단의 '파일' 메뉴를 클릭합니다
  1. 하단에 있는 '옵션'을 클릭합니다
  1. 왼쪽 메뉴에서 '리본 사용자 지정'을 선택합니다
  1. 오른쪽 목록에서 '개발자' 옆의 체크박스를 선택합니다
  1. '확인'을 클릭합니다
이제 상단 메뉴에 '개발자' 탭이 추가되었을 겁니다!
매크로 보안 설정 조정하기
  1. 방금 활성화한 '개발자' 탭을 클릭합니다
  1. '매크로 보안'을 클릭합니다
  1. 실습을 위해 '모든 매크로 포함(권장하지 않음)'을 선택합니다
  • 주의: 실습 후에는 보안을 위해 '모든 매크로 사용 안 함'으로 변경하는 것이 좋습니다
  1. '확인'을 클릭합니다
VBA 편집기 기본 인터페이스 소개
이제 VBA 편집기를 살펴볼게요.
VBA 편집기 열기
  1. '개발자' 탭을 클릭합니다
  1. '시각적 Basic' 버튼을 클릭합니다 (또는 Alt + F11 키를 누릅니다)
새로운 창이 열렸죠? 이게 바로 VBA 편집기입니다!
VBA 편집기의 주요 부분
  • 프로젝트 탐색기 (왼쪽): 현재 열려 있는 모든 엑셀 파일과 각 파일의 모듈 목록을 보여줍니다
  • 속성 창 (왼쪽 하단): 선택한 항목의 속성을 보여줍니다
  • 코드 창 (오른쪽): 실제 VBA 코드를 작성하는 곳입니다
새 모듈 삽입하기
  1. '삽입' 메뉴를 클릭합니다
  1. '모듈'을 선택합니다
이제 코드를 작성할 준비가 되었습니다!
VBA 편집기 인터페이스 이해하기
VBA 편집기는 마치 요리사의 부엌과 같습니다:
  • 프로젝트 탐색기는 냉장고입니다 (재료가 보관되어 있는 곳)
  • 코드 창은 조리대입니다 (실제로 요리를 만드는 곳)
  • 실행 버튼()은 요리를 시작하는 버튼입니다
이제 여러분은 VBA와 ChatGPT의 기본적인 개념을 이해하셨고, 실습 환경도 준비되었습니다! 다음 섹션에서는 ChatGPT를 사용하여 첫 번째 VBA 코드를 만들어보겠습니다.
3. ChatGPT로 첫 VBA 코드 만들기
ChatGPT에게 VBA 코드를 요청하는 효과적인 방법
ChatGPT에게 좋은 VBA 코드를 얻으려면, 정확하고 자세한 요청이 필요합니다. 마치 음식점에서 주문할 때 "음식 주세요"보다는 "불고기 정식에 밥은 적게, 국은 뜨겁게 해주세요"라고 하는 것이 더 정확한 것처럼요!
효과적인 프롬프트(요청) 작성법
  1. 무슨 프로그램인지 명확히 하기
  • "엑셀 VBA로..." 또는 "워드 VBA로..." 처럼 시작하세요
  1. 원하는 결과를 구체적으로 설명하기
  • "A1 셀에 '안녕하세요'라고 입력하는 코드" 처럼 명확하게 요청하세요
  1. 사용 환경이나 조건 알려주기
  • "Office 2019 버전입니다" 또는 "한글 Windows를 사용합니다" 등
  1. 코드 설명도 함께 요청하기
  • "각 줄이 어떤 역할을 하는지 초보자가 이해할 수 있게 설명해주세요"
프롬프트 예시
엑셀 VBA로 메시지 상자에 "안녕하세요, VBA 세상!"을 출력하는 간단한 코드를 작성해주세요. 저는 VBA 초보자입니다. 각 줄이 무슨 일을 하는지 자세히 설명해주세요.
간단한 "Hello World" 메시지 상자 표시하기
이제 실제로 ChatGPT에게 첫 VBA 코드를 요청해 볼까요? "Hello World"는 프로그래밍을 배울 때 가장 먼저 만드는 프로그램입니다.
ChatGPT에게 보낼 프롬프트:
엑셀 VBA로 메시지 상자에 "안녕하세요, VBA 세상!"을 출력하는 간단한 코드를 작성해주세요. 초보자가 이해할 수 있도록 각 줄을 설명해주세요.
ChatGPT가 제공할 코드:
Sub HelloWorld() ' 메시지 상자를 표시합니다 MsgBox "안녕하세요, VBA 세상!" End Sub
코드 설명:
  • Sub HelloWorld(): 코드의 시작을 알립니다. "HelloWorld"라는 이름의 작은 프로그램(서브루틴)을 만든다는 의미입니다.
  • ' 메시지 상자를 표시합니다: 작은 따옴표(')로 시작하는 줄은 주석으로, 코드 실행에 영향을 주지 않고 개발자가 이해하기 쉽게 메모를 남긴 것입니다.
  • MsgBox "안녕하세요, VBA 세상!": 메시지 상자(팝업창)에 "안녕하세요, VBA 세상!"이라는 문구를 표시합니다.
  • End Sub: 코드의 끝을 알립니다. "HelloWorld" 프로그램이 여기서 끝난다는 의미입니다.
ChatGPT가 제공한 코드를 VBA 편집기에 붙여넣기
이제 이 코드를 VBA 편집기에 넣어볼게요:
  1. 엑셀을 실행합니다
  1. 개발자 탭을 클릭합니다
  1. '시각적 Basic' 버튼을 클릭합니다 (Alt + F11 키도 가능)
  1. VBA 편집기가 열리면, '삽입' 메뉴에서 '모듈'을 선택합니다
  1. 오른쪽 큰 창(코드 창)에 ChatGPT가 제공한 코드를 복사-붙여넣기 합니다
![VBA 편집기에 코드 입력 이미지]
코드 실행 및 디버깅 기초
이제 우리의 첫 VBA 코드를 실행해볼까요?
코드 실행하기
  1. 코드 창에서 커서를 코드 내부 아무 곳에 놓습니다
  1. F5 키를 누르거나, '실행' 메뉴에서 '실행' > 'Sub/UserForm 실행'을 클릭합니다
  1. 또는 코드 창 상단의 (재생) 버튼을 클릭합니다
짜잔! "안녕하세요, VBA 세상!"이라는 메시지가 담긴 팝업창이 나타났나요? 축하합니다! 여러분의 첫 VBA 코드가 실행되었습니다! 🎉
기본적인 디버깅(문제 해결) 방법
만약 코드가 실행되지 않거나 오류가 발생한다면:
  1. 구문 오류 확인: 빨간색으로 강조된 줄이 있나요? 그렇다면 그 줄에 문법적 오류가 있습니다.
  1. 철자 확인: 모든 단어가 정확히 입력되었는지 확인하세요. 대소문자는 중요하지 않지만 철자는 정확해야 합니다.
  1. 따옴표 확인: 모든 따옴표가 쌍으로 있는지 확인하세요.
  1. ChatGPT에게 도움 요청: 오류 메시지를 복사해서 ChatGPT에 붙여넣고 "이 오류를 어떻게 해결할 수 있을까요?"라고 물어보세요.
다양한 메시지 상자 만들기
이제 조금 더 다양한 메시지 상자를 만들어볼까요? ChatGPT에게 다음과 같이 요청해보세요:
엑셀 VBA로 다음 기능을 하는 코드를 작성해주세요: 1. "계속 진행할까요?"라는 질문과 함께 '예/아니오' 버튼이 있는 메시지 상자를 표시 2. 사용자가 '예'를 클릭하면 "진행합니다"라는 메시지 표시 3. 사용자가 '아니오'를 클릭하면 "취소합니다"라는 메시지 표시 초보자가 이해할 수 있도록 설명도 함께 부탁드립니다.
이제 여러분은 ChatGPT를 사용하여 첫 번째 VBA 코드를 만들고 실행해보았습니다! 이 기초적인 지식을 바탕으로, 다음 섹션에서는 엑셀 VBA를 활용한 실용적인 업무 자동화 예제를 살펴보겠습니다.
4. 엑셀 VBA 실습: 일상 업무 자동화
이제 본격적으로 엑셀에서 실제 업무에 적용할 수 있는 VBA 자동화에 대해 알아보겠습니다. 매일 반복하는 지루한 엑셀 작업들, 이제 컴퓨터가 대신 해주도록 만들어 볼게요!
데이터 입력 자동화 (서식 적용, 값 채우기)
예제 1: 기본 서식이 적용된 새 워크시트 자동 생성하기
매번 같은 형식의 보고서를 만들기 위해 서식을 적용하는 일은 지루하죠? 이런 작업을 자동화해봅시다.
ChatGPT에게 보낼 프롬프트:
엑셀 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. "월간보고서"라는 이름의 새 워크시트를 생성 2. A1 셀에 "월간 매출 보고서"라는 제목 입력 3. A1 셀의 글꼴을 굵게, 크기는 14로 설정 4. A3:D3 셀에 각각 "날짜", "부서", "담당자", "금액" 헤더 입력 5. 헤더 행에 배경색 연한 파란색 적용 6. 모든 작업 완료 후 "보고서 서식이 생성되었습니다" 메시지 표시 코드의 각 부분이 어떤 역할을 하는지 초보자를 위해 자세히 설명해주세요.
예제 2: 자동으로 데이터 채우기 (일련번호, 날짜)
매일 또는 매주 반복해서 같은 형태의 데이터를 입력해야 한다면, 이것도 자동화할 수 있습니다.
ChatGPT에게 보낼 프롬프트:
엑셀 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. A5부터 A14까지 1부터 10까지의 일련번호 자동 입력 2. B5부터 B14까지 오늘 날짜부터 9일간의 날짜 자동 입력 (주말 포함) 3. 날짜는 "yyyy-mm-dd" 형식으로 표시 4. 작업 완료 후 "데이터가 입력되었습니다" 메시지 표시 코드의 각 부분에 대한 설명도 부탁드립니다.
데이터 정리 및 필터링 자동화
엑셀에서 데이터를 정리하고 필터링하는 작업은 매우 흔한 일입니다. 이런 작업도 자동화해볼까요?
예제 3: 셀 데이터 정렬하기
ChatGPT에게 보낼 프롬프트:
엑셀 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. A열에서 데이터가 있는 마지막 행까지 선택 2. 데이터를 A열 기준으로 오름차순 정렬 3. 작업 완료 후 "데이터가 정렬되었습니다" 메시지 표시 초보자를 위한 코드 설명도 함께 부탁드립니다.
예제 4: 특정 조건에 맞는 데이터 필터링하기
이번에는 특정 조건에 맞는 데이터만 필터링하는 코드를 만들어 보겠습니다.
ChatGPT에게 보낼 프롬프트:
엑셀 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. A3:D20 범위에 자동 필터 적용 2. D열(금액)에서 50000 이상인 항목만 필터링 3. 필터링 완료 후 "필터가 적용되었습니다" 메시지 표시 초보자를 위한 상세한 설명도 함께 부탁드립니다.
반복 계산 자동화
엑셀에서 복잡한 계산을 반복적으로 해야 할 때도 VBA가 큰 도움이 됩니다.
예제 5: 판매액에 따른 커미션 계산하기
ChatGPT에게 보낼 프롬프트:
엑셀 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. D5:D14 셀에 입력된 판매액에 대해 커미션을 계산 2. 커미션 규칙: - 판매액이 100,000 미만이면 3% - 판매액이 100,000 이상 500,000 미만이면 5% - 판매액이 500,000 이상이면 7% 3. 계산된 커미션을 E5:E14 셀에 입력 4. 금액 셀에는 통화 서식 적용 5. 작업 완료 후 총 커미션 금액을 메시지로 표시 초보자를 위한 자세한 설명도 함께 부탁드립니다.
보고서 자동 생성
마지막으로, 데이터를 기반으로 보고서를 자동으로 생성하는 예제를 살펴보겠습니다.
예제 6: 월별 매출 요약 보고서 생성하기
ChatGPT에게 보낼 프롬프트:
엑셀 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. A5:C14 셀의 데이터를 분석해 월별 매출 요약 보고서 생성 - A열: 날짜, B열: 부서, C열: 매출액 2. 새 시트 "월별요약"을 생성 3. 월별요약 시트에 각 월별 총 매출액을 표시하는 테이블 생성 4. 테이블에 간단한 서식 적용 5. 작업 완료 후 "보고서가 생성되었습니다" 메시지 표시 초보자를 위한 설명도 부탁드립니다.
정리
이번 섹션에서는 엑셀 VBA를 활용한 다양한 업무 자동화 예제를 살펴보았습니다:
  1. 서식이 적용된 템플릿 자동 생성
  1. 데이터 자동 채우기 (일련번호, 날짜)
  1. 데이터 정렬 자동화
  1. 조건에 맞는 데이터 필터링
  1. 판매액에 따른 커미션 계산
  1. 월별 매출 요약 보고서 자동 생성
이 예제들은 업무에서 자주 발생하는 반복 작업을 자동화하는 방법을 보여줍니다. 여러분의 실제 업무에 맞게 이 코드들을 수정하고 확장하여 사용해보세요!
ChatGPT는 여러분이 직면한 특정 업무 상황에 맞는 VBA 코드를 생성하는 데 큰 도움이 됩니다. "~한 작업을 수행하는 VBA 코드를 작성해주세요"라고 ChatGPT에 요청하기만 하면 됩니다.
다음 섹션에서는 워드 VBA를 활용한 문서 자동화에 대해 살펴보겠습니다.
5. 워드 VBA 실습: 문서 자동화
이번에는 Microsoft Word에서 VBA를 활용한 문서 자동화에 대해 알아보겠습니다. 워드 문서를 만들고, 편집하고, 서식을 지정하는 작업을 자동화하면 문서 작업 시간을 크게 줄일 수 있습니다.
템플릿 기반 문서 자동 생성
예제 1: 기본 템플릿 문서 생성하기
업무에서 자주 사용하는 형식의 문서를 자동으로 생성해봅시다.
ChatGPT에게 보낼 프롬프트:
워드 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. 새 워드 문서 생성 2. 제목, 날짜, 소제목, 내용을 포함한 기본 템플릿 문서 생성 3. 제목은 가운데 정렬, 굵게, 글꼴 크기 18로 설정 4. 날짜는 오른쪽 정렬, 오늘 날짜 자동 삽입 5. 소제목은 굵게, 글꼴 크기 14로 설정 6. 내용 부분에는 샘플 텍스트 포함 7. 작업 완료 후 "문서가 생성되었습니다" 메시지 표시 초보자를 위한 코드 설명도 부탁드립니다.
예제 2: 사용자 입력을 받아 문서 생성하기
이번에는 사용자로부터 입력을 받아서 그 정보로 문서를 생성해보겠습니다.
ChatGPT에게 보낼 프롬프트:
워드 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. 사용자에게 제목, 작성자, 내용을 입력받는 입력 상자 표시 2. 입력받은 정보를 사용해 새 워드 문서 생성 3. 제목은 가운데 정렬, 굵게, 글꼴 크기 18로 설정 4. 작성자와 날짜는 오른쪽 정렬로 표시 5. 내용은 입력받은 텍스트를 그대로 표시 6. 문서 하단에 페이지 번호 추가 7. 작업 완료 후 "문서가 생성되었습니다" 메시지 표시 초보자를 위한 설명도 부탁드립니다.
텍스트 찾기 및 바꾸기 자동화
예제 3: 특정 텍스트 찾아서 바꾸기
기존 문서에서 특정 텍스트를 찾아 다른 텍스트로 바꾸는 작업을 자동화해봅시다.
ChatGPT에게 보낼 프롬프트:
워드 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. 현재 열려있는 문서에서 특정 텍스트를 찾아 다른 텍스트로 바꾸기 2. 사용자에게 찾을 텍스트와 바꿀 텍스트를 입력받는 입력 상자 표시 3. 대소문자 구분 없이 모든 발생 항목 변경 4. 작업 완료 후 몇 개의 항목이 변경되었는지 메시지로 표시 초보자를 위한 설명도 부탁드립니다.
문서 서식 일괄 적용
예제 4: 여러 단락에 서식 일괄 적용하기
긴 문서에서 특정 형식의 단락이나 텍스트에 일괄적으로 서식을 적용하는 작업을 자동화해봅시다.
ChatGPT에게 보낼 프롬프트:
워드 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. 현재 문서에서 제목 형식(행 맨 앞에 '제목:' 또는 '제목 -'로 시작하는 텍스트)을 찾기 2. 찾은 제목에 스타일 '제목 1' 적용 3. 제목 뒤의 단락에 들여쓰기 적용 4. 작업 완료 후 몇 개의 제목을 찾아 서식을 적용했는지 메시지로 표시 초보자를 위한 설명도 부탁드립니다.
여러 문서 통합하기
예제 5: 여러 문서를 하나로 통합하기
이번에는 여러 워드 문서를 하나의 문서로 통합하는 작업을 자동화해봅시다.
ChatGPT에게 보낼 프롬프트:
워드 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. 사용자가 선택한 폴더에서 모든 워드 문서(.docx)를 찾기 2. 찾은 모든 문서를 하나의 새 문서로 통합 3. 각 문서 사이에 페이지 나누기 삽입 4. 각 문서 시작 부분에 원본 파일 이름을 제목으로 추가 5. 통합 문서의 시작 부분에 목차 추가 6. 작업 완료 후 몇 개의 문서가 통합되었는지 메시지로 표시 초보자를 위한 설명도 부탁드립니다.
정리
이번 섹션에서는 워드 VBA를 활용한 다양한 문서 자동화 예제를 살펴보았습니다:
  1. 템플릿 기반 문서 자동 생성
  1. 사용자 입력을 받아 맞춤형 문서 생성
  1. 텍스트 찾기 및 바꾸기 자동화
  1. 문서 서식 일괄 적용
  1. 여러 문서 통합하기
이러한 자동화를 통해 문서 작업 시간을 크게 줄일 수 있으며, 반복적인 작업에서 오는 실수도 방지할 수 있습니다. ChatGPT로 원하는 기능의 VBA 코드를 생성하고, 필요에 맞게 수정하여 사용해보세요!
다음 섹션에서는 파워포인트 VBA를 활용한 프레젠테이션 자동화에 대해 살펴보겠습니다.
6. 파워포인트 VBA 실습: 프레젠테이션 자동화
이번에는 PowerPoint에서 VBA를 활용한 프레젠테이션 자동화에 대해 알아보겠습니다. 반복적인 슬라이드 작업, 서식 적용, 차트 업데이트 등을 자동화하여 프레젠테이션 제작 시간을 크게 줄일 수 있습니다.
슬라이드 자동 생성
예제 1: 기본 구조의 프레젠테이션 자동 생성하기
업무에서 자주 사용하는 형식의 프레젠테이션을 자동으로 생성해봅시다.
ChatGPT에게 보낼 프롬프트:
파워포인트 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. 5개의 슬라이드로 구성된 새 프레젠테이션 생성 - 표지 슬라이드 - 목차 슬라이드 - 3개의 내용 슬라이드 2. 각 슬라이드에 적절한 제목과 간단한 내용 추가 3. 모든 슬라이드에 회사 로고를 오른쪽 하단에 추가(이미지 대신 텍스트로 "LOGO" 표시) 4. 작업 완료 후 "프레젠테이션이 생성되었습니다" 메시지 표시 초보자를 위한 코드 설명도 부탁드립니다.
예제 2: 사용자 입력을 받아 슬라이드 생성하기
이번에는 사용자로부터 입력을 받아서 맞춤형 슬라이드를 생성해보겠습니다.
ChatGPT에게 보낼 프롬프트:
파워포인트 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. 사용자에게 프레젠테이션 제목, 발표자 이름, 슬라이드 수를 입력받기 2. 입력받은 정보를 바탕으로 프레젠테이션 생성 3. 첫 슬라이드에 제목과 발표자 이름 표시 4. 입력받은 슬라이드 수만큼 내용 슬라이드 생성 (제목은 "슬라이드 1", "슬라이드 2" 형식으로) 5. 모든 슬라이드 하단에 슬라이드 번호와 총 슬라이드 수 표시 (예: "2 / 5") 6. 작업 완료 후 "N개의 슬라이드가 생성되었습니다" 메시지 표시 초보자를 위한 설명도 부탁드립니다.
차트 및 그래프 자동 업데이트
예제 3: 데이터를 기반으로 차트 생성하기
프레젠테이션에 데이터를 시각화하는 차트를 자동으로 생성해보겠습니다.
ChatGPT에게 보낼 프롬프트:
파워포인트 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. 현재 프레젠테이션에 새 슬라이드 추가 2. 다음 데이터를 기반으로 세로 막대 차트 생성: - 1분기: 235 - 2분기: 347 - 3분기: 289 - 4분기: 421 3. 차트 제목을 "분기별 매출 현황"으로 설정 4. X축 제목을 "분기", Y축 제목을 "매출액(백만원)"으로 설정 5. 데이터 레이블 표시 6. 작업 완료 후 "차트가 생성되었습니다" 메시지 표시 초보자를 위한 설명도 부탁드립니다.
디자인 템플릿 일괄 적용
예제 4: 프레젠테이션 디자인 일괄 변경하기
기존 프레젠테이션의 디자인을 한 번에 변경해보겠습니다.
ChatGPT에게 보낼 프롬프트:
파워포인트 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. 현재 프레젠테이션의 모든 슬라이드에 디자인 템플릿 적용 2. 모든 제목 텍스트의 글꼴을 Arial, 크기 24, 파란색으로 변경 3. 모든 본문 텍스트의 글꼴을 Calibri, 크기 18로 변경 4. 모든 슬라이드에 회사명을 바닥글로 추가 5. 작업 완료 후 "디자인이 적용되었습니다" 메시지 표시 초보자를 위한 설명도 부탁드립니다.
프레젠테이션 내보내기 자동화
예제 5: 프레젠테이션을 PDF로 내보내기
프레젠테이션을 다양한 형식으로 내보내는 작업을 자동화해보겠습니다.
ChatGPT에게 보낼 프롬프트:
파워포인트 VBA로 다음 작업을 수행하는 코드를 작성해주세요: 1. 현재 프레젠테이션을 PDF 파일로 내보내기 2. 사용자가 저장 위치와 파일 이름을 선택할 수 있는 대화 상자 표시 3. 내보내기 옵션 설정: - 고품질 해상도 - 슬라이드 노트 포함 - 모든 슬라이드 포함 4. 작업 완료 후 "PDF로 내보내기가 완료되었습니다" 메시지와 파일 경로 표시 초보자를 위한 설명도 부탁드립니다.
정리
이번 섹션에서는 파워포인트 VBA를 활용한 다양한 프레젠테이션 자동화 예제를 살펴보았습니다:
  1. 기본 구조의 프레젠테이션 자동 생성
  1. 사용자 입력을 받아 맞춤형 슬라이드 생성
  1. 데이터를 기반으로 차트 자동 생성
  1. 프레젠테이션 디자인 일괄 변경
  1. 프레젠테이션을 PDF로 내보내기
이러한 자동화를 통해 프레젠테이션 작업 시간을 크게 줄일 수 있으며, 일관된 품질의 결과물을 얻을 수 있습니다. ChatGPT에게 원하는 기능의 VBA 코드를 요청하고, 필요에 맞게 수정하여 사용해보세요!
다음 섹션에서는 실제 업무 환경에서 자주 발생하는 다양한 상황별 자동화 사례를 살펴보겠습니다.
OpenAI PlatForm

platform.openai.com

OpenAI Platform

Explore developer resources, tutorials, API docs, and dynamic examples to get the most out of OpenAI's platform.

OpenAI API 발급받기
OpenAI 사이트에 들어가면 API key를 발급받을 수 있다.