메일에 첨부된 엑셀 파일 구글 스프레드시트로 변환하기

나는 경영전략실장이다.
매일 아침 현재 재고 보유 금액을 누군가가 내 책상에 올려놨음 좋겠다.

애들한테 시킬까했는데, 그러면 애들이 나를 싫어할 것 같아서.. 자동으로 하는 방법을 찾아봤다.

다행히 물류 업체 빵토스가 매일 아침 8시에 재고 현황을 엑셀 파일로 보내주기로 했다.

제미나이에게 아래처럼 물어보면, 필요한 코드를 바로 만들어 준다.
코드를 복사해서 앱스 스크립트에 붙여 넣기만 하면 된다.
(구글 앱스 스크립트 작성은 챗GPT보다 제미나이가 조금 낫다.)

넌 구글 스프레드시트 앱스 스크립트 개발 전문가야.
아래 조건에 맞는 코드를 작성해 줘.
코드는 최대한 간결하게 작성해 줘.
코드가 완성되면 오류가 있는지 다시 한번 살펴보고 오류가 없는 코드를 제시해 줘.

- * 목적
매일 아침 8시 10분에 지메일에 수신된 이메일에서 물류회사에서 보낸 메일을 검색해서 첨부된 엑셀 파일을 구글 스프레드 시트 데이터로 변환하는 작업
- * 찾을 메일
1. 메일 제목에 "일일 재고 현황"이 포함 되어 있음
2. 첨부파일이 있음

- * 엑셀 파일 변환 방법
1. Drive API를 사용할 것
2. 임시 구글 스프레드시트 파일을 만들고, 데이터를 가져온 다음에는 임시파일을 삭제할 것
- * 저장할 스프레드시트 정보
1. 타겟 구글 스프레드 시트 : https://docs.google.com/spreadsheets/d/1NnKb2U10vIjttlTuyD82bdted2IOhG_JcmmFBbdu___/
2. 구글 스프레드시트 시트명 : 현재재고


제미나이가 아래와 같이 답변해 줬다.



아래부터는 위에서 복사한 코드를 사용해서 사용하는 방법이다.

천천히 따라하다 보면 어느 순간.. 오~~하는 순간이 온다.


1️⃣ 구글 시트 메뉴에서 “확장 프로그램 ” > “Apps Script”를 선택한다.

2️⃣ 샘플로 들어가 있는 코드는 제거해버리고, 위에서 복사한 코드를 붙여 넣은 다음 3가지 정보를 내 환경에 맞게 수정한다.

SPREADSHEET_ID : 구글 시트 URL의 아이디 부분

SHEET_NAME : 저장할 구글 시트의 시트명

SEARCH_QUERY : 검색할 메일 제목 설정

3️⃣ 위 이미지를 보면, 화면 왼쪽 패널에 “서비스” 옆의 +를 누르면 Drive API를 추가할 수 있는 창이 뜬다. 선택하고 “추가”버튼을 누른다.

4️⃣ 저장 버튼을 눌러 저장한다. 그리고 실행 버튼을 누른다.

5️⃣ 처음 실행할 때만 승인을 받으라고 뜬다.
원래 뜨는 것이니 쫄지 않아도 된다.

권한검토 → 계정 선택 → 경고창이 뜨는데.. 왼쪽 아래 “고급”을 눌러서 프로젝트로 이동을 누른다. → 엑세스 권한을 모두 부여하고 “계속”을 클릭!

6️⃣ 구글 시트에 정보가 잘 들어가는지 확인한다. 끝!



매일 8시에 자동으로 실행되게 설정해 보자.


⏹️ 자동 실행 트리거 설정

왼쪽 패널의 시계모양의 트리거 아이콘을 클릭한다.

오른쪽 아래에 있는 “트리거 추가”버튼을 눌러서 트리거를 추가한다.

시간 기반 → 일단위 → 오전8시~9시사이로 설정하고 저장한다.

이제 매일 아침 8시에 물류 회사가 재고 현황을 엑셀로 보내주면, 첨부된 엑셀을 구글 시트로 저장해 준다.


작업 결과를 메일로 확인해보고 싶다면, 제미나이에게 이렇게 요청하면 코드를 업데이트해준다.

작업이 완료되면 작업 완료 메일을 아래와 같이 보내주는 코드를 추가해 줘.
# 메일 내용 :
작업 성공 여부, 수신된 이메일 제목, 이메일 받은 시간, 데이터 저장된 구글 시트의 url
# 메일 수신인 :
abyul@naver.com, joowonoh@gmail.com


메일을 보내는 코드를 추가하지 않더라도, 실행된 결과는 화면 왼쪽 패널의 실행 아이콘을 클릭하면 볼 수 있다.


다음 시간에는 구글 시트로 변환한 재고 자료로 리포트를 만들어서 메일로 보고하는 것까지 해보자.

다음 시간이 기대된다면 댓글을 달아서 푸쉬하면 좀 더 빨리 볼 수 있다.


코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다