l3khub.com

회계업무 자동화 사례공유: 엑셀 매크로 활용 방법 #3 - 소스코드 설명

지금까지 회계 업무 자동화를 위해 기존의 업무 처리 방법을 검토하고 개선 방안을 알아보았습니다. 이번에는 엑셀 매크로를 활용한 회계 업무 자동화의 세 번째 단계로 직접 개발하고 적용한 소스 코드를 쉽게 이해할 수 있도록 상세히 설명하도록 하겠습니다.

엑셀-매크로를-활용한-회계업무-자동화-소스코드-설명-썸네일

회계업무 자동화 사례공유: 엑셀 매크로 활용 방법 #3 - 소스코드 설명




이번 편에서는 엑셀 매크로를 활용해서 회계 월말결산 업무 시간을 대폭 개선한 소스코드를 공유하고 쉽게 이해할 수 있도록 설명하도록 하겠습니다. 

설명의 편의를 위해서 엑셀에서 개발한 매크로 소스를 그대로 Notepad++에 복사해서 설명하도록 하겠습니다. (엑셀 매크로 에디터에는 행 번호가 나오지 않아 Notepad++를 사용했습니다) 


엑셀 매크로를 활용한 회계 결산업무 자동화 - 소스 공유


엑셀-매크로를-활용한-회계업무-자동화-소스-첫번째

13행의 roww 변수는 매크로가 작업하고 있는 row를 기억하는 변수입니다. 

15~24행까지는 결산월을 체크하는 코드입니다. 대부분의 회사에서 월말 결산을 할 경우 익월 초에 결산을 하기 때문에 이를 반영한 코드입니다. 즉, 5월초면 4월 결산으로 셋팅합니다.

23~42행은 이전월 데이터의 시작과 끝을 찾아서 bcf, bce 변수에 저장하고 이전월 데이터가 변경되지 않도록 수식으로 되어 있는 셀을 모두 값으로 복사하는 코드입니다. (엑셀에서 값복사와 동일합니다)

46~52행은 이전월 데이터를 당월로 복사하는 코드입니다. 여기서 위에서 저장했던 bcf, bce 변수를 활용합니다. 

엑셀-매크로를-활용한-회계업무-자동화-소스-두번째

58~66 행에는 복사한 전월 데이터에 이전 편에서 작성했던 수식을 입력하는 코드입니다. 

위의 코드를 전체적으로 다시 설명하면, 
전월 데이터중 수식으로 되어 있는 셀을 값으로 변경하고, 그 데이터를 당월로 복사한 후 값으로 되어 있는 셀에 수식을 입력합니다. 

이미 말씀 드렸듯이 전월 데이터는 변동이 되면 안되기 때문에 값복사를 해주고 당월 데이터는 전월 데이터와 매출청구 시스템에서 다운받은 데이터를 참조해야 하기 때문에 수식으로 값을 가져오도록 해 주었습니다. 

다음으로 이 글의 첫 부분에서 말씀드렸던 SAP 업로드를 위한 선수수익(초) 시트의 양식에 맞게 값을 입력해 줘야 합니다. 

엑셀-매크로를-활용한-회계업무-자동화-소스-세번째

90~137행은 선수수익-EAs 외 시트에서 당월 반영해야 할 데이터의 첫행을 읽어 선수수익(초) 시트에 입력하고 다음행으로 이동후 동일한 처리를 합니다. 이렇게 마지막행까지 처리를 하면 수작업으로 할 경우 1시간 이상 걸리고 카피&페이스트 할 때 휴먼에러가 발생하기 쉬운 부분을 매크로로 1분도 안되는 시간에 해결했습니다. 

지금까지 전월 데이터를 당월로 복사하고 수식을 입력하고 당월 데이터를 선수수익(초) 양식에 맞게 작성하는 작업을 자동으로 처리는 방법을 설명드렸습니다. 

다음으로는 당월에 신규항목을 선수수익-EAs 외 시트에 자동으로 추가하고 선수수익(말) 시트에 자동으로 넣어주는 방법을 설명드리겠씁니다. (선수수익(말) 시트는 선수수익(초)와 양식은 같으나 일부 계정이 다릅니다)

엑셀-매크로를-활용한-회계업무-자동화-소스-네번째

144~178행은 매출청구 시스템에서 다운받은 데이터중 신규항목으로 체크된 데이터를 선수수익-EAs 외 시트에 복사를 하는 코드입니다. 
매출청구 시트의 첫 행부터 마지막행까지 Loop를 돌면서 신규항목으로 체크된 항목이면 선수수익-EAs 외 시트에 복사합니다. 

다음으로 복사된 데이터를 다시 선수수익(말) 시트의 양식에 맞게 작성해 주어야 하는데 해당 코드는 아래와 같습니다. 

엑셀-매크로를-활용한-회계업무-자동화-소스-다섯번째

앞에서 설명했던 선수수익(초) 시트 작성과 같은 코드이기 때문에 코드 설명은 하지 않겠습니다. 

이렇게 회계담당자가 수작업으로 반나절 이상이 걸리던 업무를 엑셀 매크로를 활용하여 5분도 안되는 시간에 처리할 수 있도록 개선하는 과정을 보여드렸습니다. 
개선 결과를 체험한 회계담당자의 놀라운 반응을 직접 보셔야 하는데…

회계에 대한 경험이 없으시다면 선수수익이 무엇인지 그리고 이 글의 내용을 이해하기 어려우실 수 있습니다. 현재 내가 하고 있는 작업을 좀 더 개선할 수 있지 않을까 라는 마음으로 이 글을 보신다면 조금이라도 도움이 되실 것이라 믿습니다. 

도움이 되셨기를 바라며, 엑셀 매크로에 대해서 배우고 싶으시다면 아래 링크를 참고하세요.


오늘은 엑셀 매크로를 활용한 회계업무 자동화에서 TO-BE 분석 및 개발한 소스를 이해하기 쉽도록 설명하였습니다. 전체 시리즈를 천천히 읽어보시면 충분히 현업에 적용하실 수 있으실 겁니다. 
전체 소스는 조금 길어서 다음편에 올리도록 하겠습니다. 




To Top