한국GPT협회
home
기관 소개
home

챗GPT와 함께 엑셀 VBA 자동화

태그
생성 일시
2025/02/03 02:23
챗GPT는 코딩 할 줄 아는 언어가 참 많습니다.
chatgpt.com 사이트에서는 주로 파이썬 언어로 코딩을 하죠.
GPT-4o 기능 안에 파이썬을 실행할 수 있는 통합개발환경(IDE)이 포함되어 있어서 그래요.
하지만 실제로 코딩 할 줄 아는 언어는 훨씬 많습니다.
그리고 그 중에는 VBA가 있죠.
자~ 엑셀에서 매월 반복적으로 분석하는 일이 있으시다면
이번 기회에 챗GPT와 함께 VBA를 만들어보아요.

챗GPT에게 VBA에 대해서 배우기

챗GPT의 사전학습 지식에는 엑셀도 잘 들어가 있고, 그 중 VBA도 포함되어 있습니다.
VBA가 무엇인지, 어떻게 작동하는지, 어디서 기능을 찾는지 모두 알고 있습니다.
24/7 우리를 도와주는 진정한 착한 멘토 !!!

VBA로 할 수 있는 엑셀 자동화 파악하기

특정 셀(Cell) 선택하고 색깔 칠하고 평균 입력하거나 뭐 그 정도를 기대했습니다.
그런데 GPT의 설명에 의하면 VBA가 할 수 있는건 엄청나게 많네요.
4번에 감동적인 내용 나옵니다.
“여러 개의 엑셀 파일을 자동으로 열어 데이터를 취합”…
이거 취합 업무 좀 해보신 분들 모두 눈물나시겠어요. 이게 가능하답니다.
열 명, 백 명, 천 명 취합도 이제 무섭지 않아요. ㅜㅠ 감동의 눈물…
5번에 보니 무려 이메일 발송 자동화도 가능하다고 합니다.
이런거는 RPA(MS Power Automate, UiPath, 삼성 Brity 등) 같은 고급 툴을 써야 가능한거고,
최소한 Workflow 자동화 툴(Zapier, Make) 정도는 써 줘야 가능한건데요.
이게 VBA에서 그냥 되버린다니요 !!
8번도 꽤 유용하네요.
가끔은 견적서, 원가분석표, 인사정보 같은거에서 변경점 찾아야 할 때가 있는데요.
before vs after 비교를 아주 손쉽게 할 수 있겠어요.

셀 서식 자동화 VBA

일단 VBA로 자동화 할 예제 파일을 준비해봅니다.
이렇게 생긴 엑셀 파일입니다.
가상의 설문조사 결과지이고요, 챗GPT가 만들어준 가상의 데이터입니다.
우선, 설문조사 결과 점수에서 3점만 모두 주황색 배경을 칠해보겠습니다.
점수가 낮게 나온 이유에 대해서 별도로 교육생 인터뷰를 해보고 싶어서 체크를 해두려 합니다.
VBA 코드가 수행해야 하는 작업을 순서대로 차근차근 설명합니다.
GPT에게 일을 시킬 때는 항상 간단 명료하면서도 구체적으로 설명해야 합니다.
파이썬 코드를 작성할 때 그랬듯이,
VBA 코드도 잘 작성하고, 코드의 주요 내용에 대해서 친절하게 설명해 줍니다.

엑셀에서 VBA 실행 방법

이걸 엑셀에서 실행하는 방법도 물어봐야겠죠.
Alt + F11, 삽입, 모듈, 코드 붙여넣기, F5로 실행
이렇게 안내해 주네요. 엑셀로 가보죠~
Alt + F11 누르니까 이렇게 VBA 창이 뜹니다.
(혹시 안 뜬다면 챗GPT에게 안 뜬다고 얘기해주세요.
그럼 파일 > 설정 어쩌고 하면서 VBA 사용 설정 하는 방법도 알려줄겁니다)
설명 들은대로 삽입 > 모듈 눌러주고요,
GPT에게 받은 VBA 코드를 붙여 넣습니다. 그리곤 창 닫아줍니다.
엑셀 화면에서 VBA 실행은 단축키 Alt + F8 입니다. (이거도 GPT가 알려준겁니다)
Alt + F8 누르면 이렇게 VBA 코드 목록이 뜨고요,
원하는 코드 선택해서 실행 누르면 됩니다.
자~ 실행했더니 이렇게 설문조사 결과값 범위(E2:G21)에서 3인 셀은
전부 주황색 음영이 적용되었네요.
조건부 서식은 아니고, 1회성 작업으로 음영이 칠해진겁니다.
다음 교육 때 설문지를 또 취합하게 되면,
저장되어 있는 VBA 코드 불러서 실행하면 바로 3점은 색깔 칠해지는거죠.

데이터 추가 자동화 VBA

G열 우측에 열 하나 삽입하고 설문 응답의 평균을 입력해볼까요.
역시나 작동해야 하는 순서를 구체적으로 명확하게 설명합니다.
아까처럼 Alt + F11 눌러서 VBA 편집기 열고, 삽입 > 모듈 해서 코드 복붙 합니다.
편집기 닫고,
엑셀 화면에서 Alt + F8 눌러서 코드 실행 시킵니다.
이렇게 실행이 되었네요.
평균이 잘 입력되었는지, 음영이 잘 적용되었는지 확인하고,
혹시 의도와 다른 부분이 있다면 GPT와 대화하며 VBA 코드를 고치면 됩니다.

데이터 비교 자동화 VBA

견적서, 내역서, 인사정보 수정사항 체크에 도움되는 기능도 한번 만들어볼게요.
일단 VBA 코드를 받아냈고요,
sheet1을 복사해서 sheet2를 만들고 일부 데이터를 좀 고쳤어요.
GPT가 만들어준 VBA 코드를 삽입 > 모듈 해서 붙여넣었습니다.
정말 잘 찾아줄지 기대가 되네요.
Alt + F8 누르고 VBA 코드 선택해서 실행합니다. 두근두근~
짜잔~
총 4개를 모두 찾아냈습니다.
Sheet1에는 5, 5, 3, 5 점수이고,
Sheet2에는 3, 4, 4, 4 점수라서 서로 다르죠.
이제 엑셀 파일에서 변동내역 찾는 건 정말 순식간이겠네요 !!!

그래프 자동화

캬~ 이거도 되면 정말 감동이겠는데요.
일단 시켜봅니다.
저는 챗GPT가 이게 제일 좋습니다.
이거도 되나 싶을 때, 그냥 일단 한번 시켜보면 된다는거죠.
안 된다고 해서 뭐 딱히 손해볼게 없으니까요.
이 코드도 붙여넣고요,
실행해보니 그래프는 그렸네요.
그런데 위치가 K2에서는 조금 벗어났고요,
제가 원했던 그래프가 아니네요.
이건 저의 실수인 듯 합니다. 질문 프롬프트를 고쳐보겠습니다.
질문을 바꿔서 코드를 다시 받았어요.
후속 질문을 통해서 점수는 3, 4, 5가 있다는 것도 알려줬고요,
빈도 데이터는 K2에 입력하고 그래프는 K10에 삽입하라 했어요.
짜잔~
이렇게 그래프가 들어갔네요.
무엇보다 원본 데이터에 대한 링크가 살아있어서 좋습니다.
후속 편집을 하기가 편하네요.
자~ GPT를 활용한 엑셀 VBA 자동화 어떤가요~
엑셀로 반복적으로 하는 작업이 있으시다면 꼭 도전해보세요~