엑셀 매크로 · 크롤링 · RPA

반복 작업을 프로그램에 맡기는 법

· 이음웍스

뒷판을 열어 톱니가 보이는 회중시계

매일 아침 거래처 세 곳의 사이트를 돌며 단가를 엑셀에 옮겨 적는다. 주문 내역을 내려받아 양식에 맞게 고치고 합계를 낸다. 어렵지는 않은데 매일 하면 지칩니다. 순서가 늘 같은 일이라면 프로그램에 맡길 수 있습니다.

찾아보면 이름이 여럿 나옵니다. 엑셀 매크로, VBA, 크롤링, RPA. 어려운 말 같지만 하나씩 보면 간단합니다.

이름부터 — 매크로 · 크롤링 · RPA

  • 엑셀 매크로 · VBA엑셀에서 하던 동작을 기록해 두고 버튼 하나로 다시예) 주문 파일을 양식에 맞게 고치고 합계 내기
  • 크롤링사이트에 올라온 정보를 읽어 와 표로 모으기예) 거래처 세 곳의 단가를 매일 한 표로
  • RPA사람이 화면에서 하던 클릭 · 입력을 그대로 따라 하기예) 메일 첨부를 내려받아 사내 프로그램에 입력
  • 자동화 프로그램여러 단계를 이어 정해진 시각에 혼자 돌기예) 아침 9시에 모으고 · 정리하고 · 보내기
이름 넷이 각각 하는 일. 예시는 지어낸 것입니다

엑셀 매크로와 VBA가 늘 같이 나오는 것은, 매크로로 기록한 동작이 VBA라는 말로 저장되기 때문입니다. 이름은 넷이어도 하는 일은 하나입니다. 사람이 하던 순서를 그대로 적어 두고 프로그램에 시키는 것입니다.

내 일에는 무엇이 맞나

이름보다 먼저 볼 것은 그 일이 어디서 일어나느냐입니다.

지금 손으로 하는 일은…

  • 엑셀 파일 안에서 끝난다엑셀 매크로 · VBA
  • 여러 사이트를 돌며 정보를 모은다크롤링 (먼저 공식 내려받기 확인)
  • 여러 프로그램 화면을 오가며 클릭 · 입력한다RPA
  • 위의 일을 매일 정해진 시각에 이어서 한다자동화 프로그램
지금 손으로 하는 일이 어디서 일어나는지 따라가 보세요

실제로는 하나로 끝나지 않는 경우가 많습니다. "사이트에서 단가를 모아(크롤링) → 엑셀 양식에 채우고(엑셀 자동화) → 아침 9시에 혼자 돈다(자동화 프로그램)"처럼 이어 붙입니다. 그래서 맡기실 때는 도구 이름보다 지금 손으로 하는 순서를 처음부터 끝까지 알려 주시는 것이 가장 좋습니다.

맡기기 좋은 일, 사람이 하는 게 나은 일

맡기기 좋은 일사람이 하는 게 나은 일
순서늘 같다그때그때 다르다
얼마나 자주매일 · 매주몇 달에 한 번
들어오는 자료같은 양식 · 같은 사이트매번 모양이 다르다
판단규칙으로 적을 수 있다사람이 보고 정해야 한다
순서가 늘 같고, 자주 하고, 들어오는 자료의 모양이 같을수록 잘 맞습니다

판단이 매번 달라지는 일은 프로그램이 대신하기 어렵습니다. 대신 판단 앞뒤의 옮겨 적기와 모으기만 맡겨도 시간은 꽤 줄어듭니다. 사람은 다 모인 표를 보고 판단만 하면 됩니다.

같은 칸에 같은 숫자를 옮겨 적는 일이 가장 먼저 맡길 일입니다
같은 칸에 같은 숫자를 옮겨 적는 일이 가장 먼저 맡길 일입니다

맡길지 망설여지면 한 달에 몇 시간이 드는지 계산해 보세요. 하루 30분짜리 일도 쌓이면 적지 않습니다.

하루30분
한 달 (22일)11시간
일 년132시간
지어낸 예시입니다. 하루 30분을 한 달, 일 년으로 늘려 보면

크롤링 전에 확인할 것

크롤링은 남의 사이트에서 정보를 가져오는 일이라, 만들기 전에 확인할 것이 있습니다.

  1. 1공식으로 받는 길이 있나API · 엑셀 내려받기 · 연동 기능
  2. 2약관이 막고 있지 않나이용약관 · robots.txt
  3. 3로그인해야 보이는 정보인가회원만 보는 정보는 약관과 권한을 따로 본다
  4. 4개인정보가 섞여 있나이름 · 연락처는 모으지 않는다
  5. 5상대 서버에 무리가 없나간격을 두고, 필요한 만큼만
이 다섯 가지를 먼저 봅니다

가장 먼저 볼 것은 공식으로 받아 오는 길입니다. 공공기관 정보는 공공데이터포털에서 정해진 방식(API)으로 내려받을 수 있는 경우가 많고, 쇼핑몰이나 거래처 사이트도 엑셀 내려받기나 연동 기능을 두기도 합니다. 이런 길이 있으면 화면을 읽어 오는 것보다 훨씬 덜 망가집니다.

크롤링 자체가 금지된 것은 아닙니다. 다만 2~4번에 걸리거나, 남의 자료를 통째로 베껴 같은 서비스를 만드는 것이라면 문제가 될 수 있어서 만들기 전에 같이 확인합니다.

사이트가 바뀌면 멈춥니다

크롤링과 RPA는 화면의 모양을 보고 일합니다. 그래서 상대 사이트가 화면을 바꾸면 어느 날 아침 멈춥니다. 고장이 아니라 원래 그런 것이라, 처음부터 멈췄을 때 알아차리고 고치는 길을 정해 두는 것이 중요합니다.

모른 채 돌아갈 때

  1. 1상대 사이트가 화면을 바꾼다
  2. 2프로그램이 빈칸 · 엉뚱한 값을 읽는다
  3. 3그대로 엑셀에 채워진다
  4. 4며칠 뒤에야 숫자가 틀린 걸 안다

멈추고 알리게 만들었을 때

  1. 1상대 사이트가 화면을 바꾼다
  2. 2값이 비었거나 평소와 크게 다르다
  3. 3멈추고 문자 · 메일로 알린다
  4. 4어제까지 모은 자료는 그대로
멈추는 것은 막을 수 없습니다. 조용히 틀린 값을 내지 않게 하는 것이 중요합니다

가장 나쁜 것은 멈춘 줄 모르고 틀린 숫자를 계속 믿는 것입니다. 그래서 저는 처음부터 「멈추고 알리게」 쪽으로 만듭니다.

실제로 만든 예 — 혜택모아

제가 만든 혜택모아는 전국의 정부 · 지자체 지원 정책을 한곳에 모아, 나이와 사는 곳만 고르면 받을 수 있는 혜택을 골라 주는 서비스입니다. 겉으로는 검색 사이트지만, 뒤에서는 자동화가 돌고 있습니다.

정책 1만여 건을 사람 손 없이 매일 모아 옵니다
정책 1만여 건을 사람 손 없이 매일 모아 옵니다

매일 새벽 공공기관이 공개한 최신 정책을 가져와 정리합니다. 사람이 하나하나 입력하거나 고칠 필요가 없고, 모아 온 정책은 분야 · 지역별로 나뉘어 바로 찾아볼 수 있습니다.

모아 온 정책을 분야별로 보는 화면. 이 목록을 채우는 것이 뒤에서 도는 자동화입니다
모아 온 정책을 분야별로 보는 화면. 이 목록을 채우는 것이 뒤에서 도는 자동화입니다

가져오다 중간에 오류가 나도 이미 모아 둔 정보는 그대로 남게 했습니다. 위에서 말한 「조용히 틀린 값을 내지 않게」를 실제로 챙긴 부분이고, 작은 엑셀 자동화라도 같은 원칙으로 만듭니다.

맡지 않는 것

  • 예매 · 수강신청 매크로남보다 빨리 누르게 하는 프로그램
  • 사이트 약관을 어기는 자동화약관이 막은 수집 · 대량 가입 · 대량 게시
  • 종목 추천 · 매매 신호 판매남에게 파는 투자 신호
이런 자동화는 맡지 않습니다

「매크로 프로그램」이라는 말은 공연 예매나 수강신청을 남보다 빨리 누르는 프로그램을 가리킬 때도 쓰입니다. 그런 매크로는 다른 사람의 기회를 빼앗고 사이트 약관에도 어긋나서 맡지 않습니다. 내 일의 반복을 줄이는 매크로와는 다른 이야기입니다.

맡길 때 준비할 것

설명서를 쓰실 필요는 없습니다. 지금 하는 순서를 그대로 적어 주시면 됩니다.

자동화 요청 메모

하는 일
매일 아침 거래처 3곳 단가를 엑셀에 옮겨 적기
순서
사이트 로그인 → 상품 검색 → 단가 복사 → 엑셀 붙여넣기 → 사장님께 카톡
자료
지금 쓰는 엑셀 양식 1개, 거래처 사이트 주소 3개
결과
상품별 · 거래처별 단가가 한 줄씩 나오는 표
얼마나 자주
평일 아침 9시 전, 한 번에 30분쯤
지어낸 예시입니다. 이 정도 메모면 견적을 드릴 수 있습니다

순서를 글로 적기 어려우면, 평소처럼 한 번 하시는 화면을 녹화해 보내 주셔도 됩니다. 매번 받는 엑셀 파일이 있다면 두세 개를 같이 주시면 양식이 바뀌는 경우까지 미리 봅니다.

자주 묻는 질문

제 컴퓨터에서 돌아가나요?

대개 그렇습니다. 쓰시는 PC에 설치하고 쓰는 법을 알려 드립니다. 다만 PC가 꺼져 있으면 돌지 않으니, 새벽처럼 정해진 시각에 돌아야 하면 그 시각에 켜 두시거나 서버에서 돌리는 방법을 같이 정합니다.

내 PC

언제 도나
PC가 켜져 있을 때
매달 비용
대개 없음
맞는 일
출근해서 누르는 일 · 하루 한두 번

서버

언제 도나
늘 — 새벽에도
매달 비용
서버비
맞는 일
정해진 시각 · 자주 · 여럿이 결과를 볼 때
어디서 돌릴지는 얼마나 자주, 언제 돌아야 하느냐로 정합니다

엑셀 매크로는 직접 배울 수 있지 않나요?

배울 수 있습니다. 엑셀의 「매크로 기록」으로 동작을 녹화하는 데서 시작하면 간단한 반복은 혼자서도 됩니다. 여러 파일을 오가거나, 사이트에서 가져오거나, 정해진 시각에 혼자 돌아야 하는 일부터는 맡기시는 편이 빠릅니다.

사이트가 바뀌어 멈추면요?

넘겨 드린 뒤 한 달 동안 합의한 범위의 오류는 무상으로 고칩니다. 그 뒤에 상대 사이트가 바뀌어 멈추면 건당 10만 원부터 고쳐 드립니다(부가세 별도).

이음웍스는

프로그램 · 자동화는 30만 원부터, 1주부터 걸립니다(부가세 별도). 자동화할 작업 하나를 기준으로 견적을 드리고, 잘 돌면 다음 작업을 붙이는 편을 권합니다. 대개 쓰시는 PC에서 돌아가서 매달 드는 비용은 없습니다. 자세한 범위는 프로그램 · 업무 자동화 개발에 있습니다.

견적 요청서에 지금 손으로 하는 순서를 적어 보내 주세요. 어디까지 맡길 수 있는지부터 같이 봅니다.

견적은 무료입니다

만들고 싶은 것을 적어 주시면 하루 안에 연락드립니다. 예산이 정해져 있으면 그 안에서 무엇부터 만들지 함께 정합니다.

무료 견적 문의