프로그래밍을 배우고, 직접 프로그램을 개발하는 것은 생각보다 긴 여정입니다. (개발 경험이 없는 비개자라면 더욱 그럴 것이고, 엄두도 나지 않는 일일 것 입니다). 해서 많은 사람들이 그 과정에서 지치고 포기하게 되죠. 하지만 요즘은 생성형 AI 덕분에 프로그래밍 지식이 많지 않아도 자신이 원하는 프로그램을 훨씬 수월하게 만들 수 있게 되었습니다.
이번 글에서는 생성형 AI 도구를 이용해서 인세 지급 메일을 자동으로 발송하는 구글 스프레드시트를 만드는 방법을 소개합니다. 전문적인 프로그래밍 지식이 없더라도 AI의 도움으로 실용적인 자동화 시스템을 구축할 수 있는 방법을 단계별로 살펴보겠습니다.
인세 메일 자동 발송 시트 소개
아래 주소로 접속하면 "mail-temp"와 "royalty"라는 2개의 시트로 구성된 "인세 메일 자동 발송" 문서를 볼 수 있습니다. 먼저 문서에 있는 2개의 시트가 각각 어떤 구조로 구성돼 있고, 어떤 일을 하는지 살펴보겠습니다.
� 인세 메일 자동 발송 시트: https://bit.ly/royalty-mail-blog
mail-temp 시트
mail-temp 시트는 저자에게 발송하는 메일 포맷을 정리한 시트로 다음과 같은 내용으로 구성되어 있습니다:
안녕하세요. 위키북스 xxx입니다.
오랜만에 연락드립니다. 잘 지내고 계신지요?
아래 2025년 도서 인세 내역을 정리했습니다.
이번에 추가로 총 yyy권에 대한 인세 zzz원을 지급해 드리고자 합니다.
기존에 송금해드린 kkk가 맞는지 확인해 주시면 이번 주 내로 송금하겠습니다.
좋은 책을 집필해 주신 점 다시 한 번 감사드립니다.
고맙습니다!
이 메일 템플릿에서 xxx, yyy, zzz, kkk는 일종의 임시 값으로, royalty 시트에서 실제 값이 채워져 메일 본문이 완성됩니다.
royalty 시트
royalty 시트는 인세 지급을 위한 기본 정보와 메일 발송을 위한 정보가 저장된 두 부분으로 구성됩니다. 인세 기본 정보 칼럼에는 도서 기본 정보와 판매 부수, 기지급 인세 등 인세 계산을 위한 정보가 저장이 돼 있습니다.
메일 발송 정보 칼럼에는 메일 발송을 위한 정보와 메일 발송 버튼, 발송 결과 등의 정보가 저장돼 있습니다. 각 칼럼의 의미는 다음과 같습니다.
받는사람 : 저자 메일 주소
보내는사람 : 발송자 메일 주소(지메일만 가능)
제목 : 메일 제목
본문 : 메일 본문
첨부URL : 상세 인세 지급 정보 등이 저장된 URL 주소
발송여부 : 박스 체크시 메일 발송
메일상태 : 메일 발송 정상 처리 여부
메일 제목과 본문 자동 생성 방법
인세 기본 정보 칼럼과 메일 발송 정보 칼럼의 대부분은 입력된 정보이거나 자동으로 계산되는 금액 칼럼이지만, '제목'과 '본문'은 다른 칼럼 값을 기초로 만들어집니다.
메일 제목 만들기
제목이 있는 Q2 칼럼에는 다음과 같은 함수가 저장되어 있습니다.
=SUBSTITUTE("xxx 님 안녕하세요. 2025년 상반기 인세 정산 내역 관련해서 메일 드립니다.", "xxx", $D2)
SUBSTITUTE는 구글 스프레드시트에서 사용할 수 있는 함수로 다음과 같은 매개변수를 활용해서 특정한 문자열을 바꿔줍니다.
첫 번째 매개변수: 원본 텍스트 문자열
두 번째 매개변수: 찾아서 바꿀 텍스트
세 번째 매개변수: 대체할 새로운 텍스트
즉, 이 함수는 원본 문자열에서 "xxx"라는 텍스트를 찾아 스프레드시트의 D2 셀에 있는 값으로 바꿔줍니다. D2 셀에 "홍길동"이라는 이름이 있다면, 결과는 "홍길동 님 안녕하세요. 2025년 상반기 인세 정산 내역 관련해서 메일 드립니다." 라는 제목이 만들어집니다.
메일 본문 만들기
메일 본문이 저장된 R2 칼럼에는 다음과 같은 함수가 저장되어 있습니다.
=LET(
template, 'mail-temp'!$B$1,
step1, SUBSTITUTE(template, "xxx", $N2),
step2, SUBSTITUTE(step1, "yyy", $K2),
step3, SUBSTITUTE(step2, "zzz", $M2),
SUBSTITUTE(step3, "kkk", $E2)
)
LET 함수는 구글 스프레드시트 내에서 임시 변수를 만들어 복잡한 계산을 여러 단계로 나누어 수행할 수 있게 해주며, 각각의 의미는 다음과 같습니다.
template: 'mail-temp' 시트의 B1 셀에 있는 이메일 템플릿 문자열을 가져옵니다.
step1: 템플릿에서 "xxx"를 현재 시트의 N2 셀 값(담당자)으로 치환합니다.
step2: step1의 결과에서 "yyy"를 K2 셀 값(추가인세)으로 치환합니다.
step3: step2의 결과에서 "zzz"를 M2 셀 값(실지급액)으로 치환합니다.
마지막 단계: step3의 결과에서 "kkk"를 E2 셀 값(인세계좌)으로 치환합니다.
인세 메일 자동 발송 시트 사용 방법
인세 메일 자동 발송 시트 구성을 살펴봤다면 이제 해당 시트를 실제로 활용하는 방법을 살펴보겠습니다. 먼저 제공되는 인세 메일 자동 발송 시트 문서 사본 만들기부터 시작해야 합니다.
문서 사본 만들기
1. https://bit.ly/royalty-mail-blog로 이동합니다.
2. [파일](1) → [사본만들기](2) 메뉴를 클릭합니다.
3. 팝업창에서 문서 제목을 수정(1)하고 [사본만들기] 버튼을 클릭(2)하면 문서 사본이 만들어집니다.
메일 자동 발송 프로그램 활성화하기
문서 사본을 만들었다면 해당 사본의 메일 자동 발송 프로그램을 활성화해야 합니다:
1. [확장 프로그램](1) → [Apps Script](2)를 클릭합니다.
2. 코드 화면에서 [실행] 버튼을 클릭해서 프로그램 실행을 위한 권한 부여과정을 진행해야 합니다.
3. [실행] 버튼 클릭후 나오는 다음 화면에서 [권한 검토] 버튼을 클릭합니다.
4. 검증되지 않은 프로그램 사용에 대한 경고 화면이 나오면 [고급] 링크를 클릭한 후 [제목없는 프로젝트로 이동(안전하지 않음)]을 클릭합니다.
5. 마지막 팝업창에서 [모두 선택] 체크 박스를 클릭해 모든 권한을 선택하고 [계속] 버튼을 누르면 설정이 마무리됩니다.
메일 발송하기
이제 royalty 시트로 돌아가서 자신의 지메일 주소를 입력(1)하고 [발송여부] 체크 박스에 체크(2)하면 메일을 발송할 수 있습니다.
생성형 AI로 인세 메일 자동 발송 프로그램 만들기
지금까지 인세 메일을 자동으로 발송하기 위한 구글 스프레드시트의 구성과 사용법을 살펴봤습니다. 이제 이러한 프로그램을 어떻게 만들었는지 간단하게 소개하겠습니다.
생성형 AI에 작업 요청하기
먼저 인세 메일을 자동으로 발송하기 위해 필요 사항을 정리한 후 해당 내용을 캡처했습니다. 그리고 캡처한 이미지와 함께 아래와 같은 프롬프트를 통해서 클로드(Claude)에 작업을 요청했습니다;
업로드한 이미지와 같은 구성의 메일 자동 발송 시스템을 구글 스프레드시트에서 구현하려고 합니다. 아래 각 칼럼 설명을 참고해서 자동 메일 발송을 위한 시스템 구축을 위한 세부적인 방법을 알려주세요. 시트 이름은 'mail-send' 이고 초보자도 이해할 수 있게 모든 단계가 친절하게 설명해야 합니다.
* 받는사람 : 메일 받는사람입니다.
* 보내는사람 : 메일 보내는사람입니다.
* 제목 : 메일 제목입니다.
* 본문 : 메일 본문입니다.
* 첨부URL : 메일 하단에 첨부되는 URL 주소입니다.
* 발송확인 : 박스에 체크하면 메일이 발송이 됩니다.
* 메일상태 : 메일 발송이 제대로 됐는지 결과를 보여줍니다
생성형 AI의 응답과 활용
요청한 프롬프트에 대한 응답으로 실행 가능한 코드를 포함한 다음과 같은 상세한 안내를 받을 수 있었습니다.
Google 스프레드시트 체크박스 자동 메일 발송 시스템 만들기
체크박스 체크만으로 즉시 메일이 발송되는 간소화된 시스템을 만들어 보겠습니다. 트리거 설정 단계 없이 작동하도록 수정했습니다.
1. 스프레드시트 준비하기
- 'mail-send'라는 이름의 시트를 생성합니다.
- 이미지에 표시된 대로 다음 열을 설정합니다:
◦A열: 받는사람
◦B열: 보내는사람
◦C열: 제목
◦D열: 본문
◦E열: 첨부URL
◦F열: 발송여부 (체크박스)
◦G열: 메일상태
2. 체크박스 삽입하기
- F2 셀부터 원하는 범위를 선택합니다.
- 상단 메뉴에서 '삽입' → '체크박스'를 클릭합니다.
- 체크박스가 삽입됩니다.
3. Apps Script 코드 작성하기
- Google Sheets에서 '확장 프로그램' → 'Apps Script'를 클릭합니다.
- 열린 편집기에 다음 코드를 붙여넣습니다:
// 스프레드시트가 열릴 때 자동으로 실행
function onOpen() {
// 자동 트리거 설정 (설정 단계 없이 자동으로 작동)
var triggers = ScriptApp.getProjectTriggers();
var triggerExists = false;
.
.
}
<중략..>
4. 코드 저장 및 실행하기
- 코드를 저장합니다 (Ctrl+S 또는 Cmd+S). -
- 좌측 함수 목록에서 onOpen 함수를 선택합니다.
- 실행 버튼(▶)을 클릭하여 초기 설정을 실행합니다.
- 권한 요청 창이 나타나면 허용합니다.
5. 권한 설정하기
처음 스크립트를 실행할 때 권한을 요청하는 창이 나타납니다:
- '권한 검토'를 클릭합니다.
- Google 계정으로 로그인합니다.
- "이 앱이 확인되지 않았습니다"라는 경고가 나타나면, '고급'을 클릭한 후 '(안전하지 않음) [프로젝트 이름]으로 이동'을 클릭합니다.
- '허용'을 클릭하여 권한을 부여합니다.
6. 시스템 사용법
- A열에 받는 사람의 이메일 주소를 입력합니다.
- B열에 보내는 사람의 이메일 주소를 입력합니다 (Gmail 계정과 연결된 이메일).
- C열에 이메일 제목을, D열에 본문을 입력합니다.
- E열에 첨부하려는 URL을 입력합니다.
- F열의 체크박스를 체크하면 즉시 이메일이 발송됩니다.
- G열에서 메일 발송 상태를 확인할 수 있습니다.
.
.
.
생성형 AI가 제공한 코드와 안내를 따라 몇 번의 수정 과정을 거쳐 인세 메일 자동 발송 시스템을 완성할 수 있었습니다.
결론: 생성형 AI를 활용한 프로그래밍의 장점
생성형 AI가 제시한 내용은 문서 만들기부터 각각의 칼럼 설정법, 프로그래밍 코드, 그리고 실행 방법까지 필요한 모든 사항을 친절하게 설명하고 있습니다. 기본적으로 구글 스프레드시트에서 프로그램을 실행하기 위한 방법과 오류 발생 시 대처 방법에 대한 지식이 필요하지만, 그 노력의 수준은 전통적인 프로그래밍 학습에 비해 매우 낮습니다.
예전에 프로그래밍 기본 문법을 배우고 원하는 프로그램을 만드는 단계에 비하면 필요한 노력은 10분의 1도 되지 않습니다. 또한, 프로그래밍 과정에서 모르는 사항을 AI에게 바로바로 물어보고 답신을 얻을 수 있다는 점도 큰 장점입니다.
생성형 AI를 활용하면 프로그래밍 경험이 없는 사람도 자신이 필요한 자동화 도구를 만들 수 있게 됩니다. 이는 디지털 도구를 활용한 업무 효율화를 일반 사용자들에게도 확장시키는 혁신적인 변화입니다.
이번 글에서는 인세를 자동으로 발송하는 시트에 관해 알아보고, 이러한 프로그램을 AI의 도움을 받아 만드는 방법을 살펴봤습니다. 그밖에 생성형 AI를 활용하여 업무 생산성을 높이는 다양한 방법이 궁금하다면 ≪생성형 AI 업무혁신 2≫ 도서를 참고해주세요.
AI로 인해 일을 하는 방법과 해야할 일이 바뀌고 있습니다.
위키북스에서는 “미래 소년 코난” 프로젝트를 통해서 조금씩 업무를 변화시키고 있으며,
그 과정을 글로 정리했습니다.
생성형 AI로 여러분의 고민을 해결하는 데 조금이나마 도움이 되길 기대합니다.