Excel VBA 코드를 활용한 채용, 복무관리, 인사서무 업무

 

 

 

 

들어가며

 

조직에서 업무를 수행하다 보면, 다양한 데이터를 처리하고 정리해야 할 때가 많습니다. 그러한 업무 중 일부는 반복적인 작업들로 이루어져 있어서 담당자의 시간과 노동력을 불필요하게 소비할 때가 종종 있습니다. 이와 같은 업무에서 엑셀 VBA(Visual Basic for Applications)를 활용하면 반복적인 업무의 비효율성을 크게 줄일 수 있습니다.

이전에는 엑셀 VBA를 활용하기 위해서는 코딩 능력이 필요하여 이에 익숙하지 않은 분들은 사용하기에 어려움이 있었습니다. 하지만 Chat GPT가 등장하면서 코드 작성에 어려움을 겪지 않고도 엑셀 VBA를 사용할 수 있게 되었습니다. 사용자가 Chat GPT에게 자신이 원하는 작업을 한글로 전달하면, Chat GPT는 그에 맞게 VBA 코드를 생성해 줍니다. 사용자는 Chat GPT 활용을 통해 복잡한 VBA 코드 작성에 대한 부담을 덜 수 있으며, 업무 처리 시간을 단축하고 효율성을 높일 수 있습니다.

이번 글에서는 업무 처리에 있어 Chat GPT와 VBA 코드를 함께 사용하여 업무의 효율성을 높일 수 있는 방법에 대해 소개하고자 합니다. 엑셀 VBA와 Chat GPT를 함께 사용하여 인사 업무의 효율성을 높이는 방법에 대해 다룰 예정입니다. 인사서무, 채용, 복무관리 등 다양한 인사업무에 적용 가능하며, 더 나은 업무 처리 방식을 찾는 데 도움이 될 것입니다.

 

 

1. 채용업무 수행

 

첫 번째로, 채용 업무(또는 기타 평가 업무)에서 와 Chat GPT와 VBA 코드를 사용하여 합계 점수, 평균 점수, 등수, 합격 여부를 계산하는 방법을 소개하겠습니다.

Excel에서 VBA 코드를 작성하는 방법은 다음과 같습니다. 먼저, 엑셀을 실행한 후, 상단 메뉴에서 [개발도구] – [Visual Basic]을 클릭합니다. 만약 상단 메뉴 칸에 [개발도구]가 보이지 않는다면, 홈 메뉴에서 마우스 오른쪽 버튼을 클릭하여 [리본 메뉴 사용자 지정]을 선택하고, [리본 사용자 지정] 탭에서 개발도구를 활성화합니다.

 

 

 

(좌) 리본 메뉴 사용자 지정을 클릭, (우) 개발도구 탭을 활성화 시키기

 

 

[개발 도구] 메뉴가 활성화되면, [개발 도구] 내 [Visual Basic] 메뉴를 클릭하여 VBA를 실행합니다. VBA가 실행되면 [삽입] – [모듈]을 클릭하여 VBA 코드를 입력할 창을 활성화합니다.

 

 

(좌) Visual Basic 실행, (우) VBA 내 모듈 실행

 

 

Chat GPT가 제공하는 VBA 코드를 보면 오른쪽 위에 [Copy code] 버튼이 있습니다. 이를 클릭하면 코드 내용이 임시 저장됩니다. 복사한 후 VBA 코드 입력 창에 Ctrl+V를 눌러 코드를 붙여 넣고, 상단에 있는 빨간색 표시된 삼각형 아이콘을 누르면 코드가 실행됩니다.

 

 

(좌) Chat Gpt VBA 코드 도출 화면, (우) 엑셀 VBA 코드 입력 화면

 

 

다음으로는 각 심사위원 점수의 합계와 평균 점수를 작성하는 VBA 코드를 Chat GPT에게 물어보았더니 아래와 같이 VBA 코드를 도출해 줍니다. 도출 VBA 코드는 위에서 설명한 것과 동일하게 Chat GPT가 재시해 준 코드 오른쪽 위 [Copy code]를 클릭한 후 해당 코드를 Excel의 Visual Basic에 붙여 실행하면 됩니다.

위 화면에서 볼 수 있는 바와 같이 코드를 붙여 넣기 한 후 위 삼각형 모양의 아이콘을 클릭(또는 F5)하면 실행됩니다.

 

 

(좌) Gpt Chat을 통한 합계와 평균 도출 VBA 코드, (우) 엑셀 상 합계와 평균 계산 결과 도출

 

 

이후에는 평균 점수를 기준으로 1,000명의 지원자의 순위를 도출하는 VBA 코드를 Chat GPT에 요청하여 받고 이를 엑셀 VBA에 입력하였습니다. 엑셀 VBA 실행 결과로 평균 점수를 비교하여 지원자들의 순위가 도출되었습니다. 만약 VBA 코드를 입력하여 에러가 발생할 경우, 에러 메시지를 다시 Chat GPT에게 전달하면 Chat GPT가 해당 에러 메시지를 해결할 수 있는 방안을 다시 알려줍니다.

 

 

(좌) 서류전형 순위를 도출 VBA 코드를 알려주는 Chat GPT, (우) 실행 결과 도출된 평균점수 순위

 

 

이번에는 도출해 낸 지원자의 등수를 통해 합격자와 불합격자를 구분하는 작업을 진행해 봅시다. 이번 채용의 서류전형에서는 200명이 합격한다고 가정하겠습니다. 1,000명의 지원자 중 200등 안에 들어가는 지원자에 대해서 합격을 명시하는 VBA 코드를 작성해 달라고 Chat GPT에게 요청하였습니다. 요청에 따라 Chat GPT가 도출한 VBA 코드를 복사하여 이를 엑셀 VBA에 입력하였습니다. VBA 코드를 입력한 결과는 아래 우측 그림과 같습니다. 합격여부에 ‘합격’과 ‘불합격’ 표시가 생긴 것을 확인할 수 있습니다.

 

 

(좌) 합격 여부를 도출 VBA 코드를 알려주는 Chat GPT, (우) 실행 결과 도출된 합격 여부

 

 

물론 위의 작업들은 엑셀 함수를 통해 수행할 수도 있지만, Chat GPT와 VBA 코드를 연동하여 업무를 수행하면, 함수를 모르더라도 Chat GPT에게 한글로 명령하여 수행할 수 있다는 장점이 있습니다. 또한, 코드에 에러가 발생했을 때에도 Chat GPT와 대화를 통해 해결책을 찾을 수 있다는 장점 또한 가지고 있습니다.

 

 

2. 복무관리 업무 수행

 

복무담당자가 출퇴근 기록과 회사의 ERP 내 복무 신청이 불일치하는 경우를 찾아 수정하는 업무를 하고 있다고 가정해 봅시다. 이 작업은 일반적으로 복무담당자의 많은 노동력과 시간을 필요로 합니다. 해당 업무에서 엑셀 VBA 코드 활용하면 업무 효율성을 크게 향상할 수 있습니다.

근무자가 실제 출퇴근 기록과 복무 신청 내역이 일치하는지 검토하고 이상이 있을 경우 이를 표시하고 담당자가 빠르게 찾을 수 있도록 Chat GPT에게 코드를 요청하여 VBA 코드를 받았습니다. 해당 코드를 엑셀 VBA에 입력한 결과, 출근 시간과 퇴근 시간에 이상이 있는 경우 그 내역이 별도로 표시되어 복무담당자가 이를 쉽게 확인할 수 있게 되었습니다.

 

 

(좌) 출근 시간 대조 체크, (우) 퇴근 시간 대조 체크

 

 

아래 사진은 VBA 코드를 입력하여 얻은 결과입니다. 먼저, 출근의 경우 [근무유형]을 통해 등록된 출근 시간보다 실제 출근 기록 시간이 늦는 경우 [출근 이상여부]에 ‘이상 있음’을 표시하며 해당 행을 노란색으로 채우도록 VBA 코드를 작성하였습니다. 하지만 해당 근무자가 지참을 정상적으로 신청하여 근무신청 내역에 ‘지참’이 있음을 확인한 경우에는 이상이 없는 것으로 판단하도록 코드를 구성하였습니다.

마찬가지로 퇴근의 경우에도 [근무유형]을 통해 등록된 퇴근 시간보다 실제 퇴근 기록이 빠를 경우 ‘이상 있음’으로 알려주도록 코드를 작성하였습니다. 그러나 퇴근 시간보다 빠른 퇴근 기록이 있어도 해당 근무자가 조퇴를 정상적으로 신청하여 근무신청 내역에 ‘조퇴’가 있음을 확인하는 경우에는 이상이 없는 것으로 판단할 수 있도록 VBA 코드를 구성하였습니다.

 

 

 

 

3. 인사서무 업무 수행

 

인사 서무 업무를 수행하면서 많은 시간이 소모되는 단순 반복 작업들이 종종 발생합니다. 이러한 작업들 중 대표적인 예로는 외부 기관 발송이나 조직 내 보고를 위한 부서별 자료 수집 및 정리 작업 등이 있습니다. 엑셀 VBA 코드와 Chat GPT를 활용하면, 부서별로 인사 관련 정보를 수집하고 정리하는 시간을 크게 단축할 수 있습니다.

 

 

(좌) 특정 폴더에 있는 부서별 작성 자료들, (우) Admin Offices 부서의 인적 정보 예시

 

 

각 부서에서 동일한 양식으로 정보를 인사부서에 전송했다고 가정해 봅시다. 파일이 작을 경우 각 파일의 시트 내용을 하나의 워크시트로 통합하는 작업은 담당자가 직접 수작업으로 자료를 통합하는 것이 가능할 수 있지만, 파일을 보내는 부서(또는 지점)가 매우 많을 경우 해당 방식의 업무처리는 비효율성이 매우 큽니다. 이때 엑셀 VBA 코드와 Chat GPT를 활용하면 업무를 효율적으로 수행할 수 있습니다.

Chat GPT에게 각 부서에서 전송한 엑셀 파일이 위치한 폴더를 알려주고 해당 폴더에 있는 모든 파일의 시트 내용을 합쳐주는 VBA 코드를 작성해 달라고 요청했습니다. Chat GPT는 요청에 따라 엑셀 VBA 코드를 제시해 주었습니다. 이 코드를 실행하기 위해서는 새로운 엑셀 파일을 실행하고 엑셀 VBA 실행 창을 열어 코드를 입력하고 실행하면, 해당 엑셀 파일에 지정된 폴더에 있는 엑셀의 내용이 모두 합쳐집니다.

 

 

 

 

Chat gpt가 알려준 VBA 코드를 입력한 결과, 아래 사진에서 확인할 수 있는 바와 같이 각 부서별 데이터가 통합되어 한눈에 볼 수 있도록 하나의 엑셀파일이 생성된 것을 확인할 수 있습니다.

 

 

실행결과 모든 부서의 정보가 합쳐진 것을 확인할 수 있다.

 

 

이렇게 인사 서무 업무에서도 엑셀 VBA 코드와 Chat GPT를 활용하면 더욱 빠르고 정확하게 업무를 수행할 수 있습니다.

 

 

나가며

 

이번 글에서는 엑셀 VBA와 Chat GPT를 함께 사용하여 인사 업무의 효율성을 높이는 방법을 살펴보았습니다. 이는 인사서무, 채용, 복무관리 등 다양한 업무에 적용될 수 있으며, 업무 처리 시간을 단축하고 효율성을 높이는 데 큰 도움이 됩니다.

엑셀 VBA는 잘 활용하면 업무 효율성을 높일 수 있지만, VBA 코드 작성을 위해서는 코딩 등의 지식을 추가로 습득해야 사용이 가능하기에 상대적으로 많이 활용되지 못했습니다. 하지만 Chat GPT의 등장을 통해 GPT에게 원하는 작업을 한글로 설명하고 VBA 코드를 쉽게 얻을 수 있게 되었습니다. 또한 코드 작성 중 에러가 발생하더라도 Chat GPT에 해당 에러를 전달하면 에러를 해결할 수 있는 방법을 얻을 수 있게 되었습니다. 이제는 사용자가 VBA 코딩을 모르더라도 엑셀 VBA를 활용하여 업무 생산성을 높일 수 있는 환경이 조성되었습니다.

이러한 방식을 적용하면 업무 처리 과정에서 담당자의 시간과 노력을 절약할 수 있으며, 전반적인 업무 진행 속도가 빨라지는 데 큰 기여를 할 것입니다. 또한, 기술 발전에 대한 적극적인 대응은 조직의 경쟁력을 높이는 데 중요한 역할을 합니다. 따라서 엑셀 VBA와 Chat GPT를 함께 사용하는 방법은 인사 업무의 경쟁력을 높일 수 있는 방법 중 하나이며, 앞으로 더욱 발전하고 성장하는 조직을 만들기 위해서는 적극적으로 활용해 나가야 할 것입니다.

 

 

김창일 님이 브런치에 게재한 글을 편집한 뒤 모비인사이드에서 한 번 더 소개합니다.