
매주 월요일 아침, 똑같은 일 반복하고 계시지 않나요?
구글 슬라이드 열고, 구글 시트 열고, 최신 숫자 복사해서 붙여넣고, 달성률 다시 계산하고, 코멘트 고치고... 저도 오랫동안 그랬어요. 숫자 하나 잘못 옮기면 회의에서 바로 티가 나니까, 은근히 신경도 많이 쓰이는 작업이죠.
그런데 이 작업, 구글 시트의 '확장 프로그램' 메뉴 안에 있는 Apps Script로 완전히 자동화할 수 있습니다. 코딩을 몰라도 괜찮아요. 코드는 Gemini가 다 써주니까요. 저희는 상황을 잘 설명하고, 복사해서 붙여넣기만 하면 됩니다.
오늘은 제가 실제로 OKR 주간 보고 슬라이드를 시트 데이터 기반으로 자동 업데이트되게 만든 과정을, 실패한 부분까지 포함해서 처음부터 끝까지 보여드릴게요.
잠깐, Apps Script가 뭔가요?
본격적으로 들어가기 전에, 오늘의 주인공부터 소개할게요. Apps Script(줄여서 GAS)는 구글 스프레드시트, Gmail, 구글 캘린더 같은 구글 서비스들을 내 입맛대로 자동화하고 연결해 주는 프로그램입니다. 구글이 직접 만들어서 워크스페이스 안에 심어둔 자동화 도구예요.

제가 이 도구를 '구글 AI 생태계에서 꼭 배워야 할 하나'로 꼽는 이유는 아래 4가지입니다.
❶ 완전 무료입니다. 별도 구독도, 설치도 없어요. 구글 계정만 있으면 브라우저에서 script.google.com에 접속해 바로 쓸 수 있습니다.
❷ 구글 도구들과의 연동이 압도적으로 유연해요. Gmail에서 메일을 읽어와 시트에 정리하고, 시트 데이터로 슬라이드를 고치고, 캘린더에 일정을 넣는 일이 전부 한 곳에서 됩니다. Zapier나 Make 같은 외부 자동화 툴로 하려면 유료 플랜에 커넥터 설정까지 필요한 일들이죠.
❸ '트리거' 기능으로 완전 무인 자동화가 됩니다. 매주 월요일 아침 8시, 폼이 제출될 때, 시트가 수정될 때 - 조건만 걸어두면 제가 자는 동안에도 알아서 돌아가요.
❹ 그리고 결정적으로, 이제는 코딩을 몰라도 됩니다. 코드는 Gemini가 써주니까요. 저희에게 필요한 건 프로그래밍 지식이 아니라 '무엇을 자동화하고 싶은지' 설명하는 능력입니다.
솔직히 고백하면, 저도 코드를 읽는 눈은 약해요. 그런데도 Apps Script를 몇 년째 애용하고 있습니다. 예전에는 에러가 나면 Gemini와 몇 번씩 핑퐁을 해야 했는데, 요즘은 체감상 거의 한 번에 돌아가요. AI가 좋아진 만큼 '아이디어만 있으면 되는 도구'에 점점 가까워지고 있는 거죠.

구글 슬라이드에 ⬅️ 자동으로 구글 시트 내용 반영되게 하기
먼저 완성본부터 보여드릴게요. 왼쪽 재료는 일별 KPI 데이터가 쌓이는 구글 시트와 구글 슬라이드 보고서 템플릿, 결과물은 OKR 성과 분석 보고서 슬라이드입니다.

❶ STEP 1. 자동 업데이트할 자리에 {{}} 표기하기
첫 단계는 코딩이 아니라 '구분자 심기'입니다. 구글 시트 내용 업데이트에 따라, 슬라이드에서 매주 바뀌어야 하는 자리마다 중괄호 두 개 {{}} 를 넣어 이름표를 붙여주는 거예요.
예를 들어 표지의 날짜 자리에는 {{date}}, 전사 KR 평균 달성률 자리에는 {{rate}}, 성과 요약에는 {{achievement}}, 리스크에는 {{risk}} 이런 식으로요. 나중에 Apps Script가 '어디에 무슨 내용을 넣어야 하는지' 찾아갈 주소 역할을 합니다.

구글 시트를 그대로 붙여넣은 장표는 이렇게 할 필요가 없어요.
구글 시트의 표를 붙여 넣을 때 '연결하여 붙여넣기'로 붙여넣으면
자동으로 구글 시트 내용이 연동되어 업데이트되거든요.

❷ STEP 2. Gemini에 상황을 '최대한' 설명하기
이제 Gemini에게 코드를 받으러 갑니다. 여기서 결과물의 퀄리티를 가르는 포인트가 하나 있어요. 말로 길게 설명하는 대신, 구글 시트와 슬라이드 파일을 통째로 첨부하는 겁니다.
Gemini 입력창의 + 버튼 → 'Drive에서 파일 추가'를 누르면 드라이브의 파일을 바로 붙일 수 있거든요. 이렇게 하면 Gemini가 슬라이드의 구조와 시트의 컬럼 구성을 정확하게 이해한 상태로 코드를 써줍니다. (공유받은 파일이라면 '개인 드라이브로 사본 만들기'를 먼저 해주세요.)

이게 바로 Gemini의 매력. 구글 드라이브에 있는 파일을 다운받지 않아도 바로 연동 첨부가 가능해요.

제가 쓴 프롬프트는 이겁니다. 그대로 복사해서 쓰세요.
포인트를 짚어드리면요.
· '어떤 부분을 어떻게 분석할지는 네가 판단해줘' — 구분자별 매핑을 일일이 정의하지 않고 AI에게 위임했어요. 파일을 첨부했기 때문에 가능한 방식입니다.
· '슬라이드, 시트 아이디 모두 지정해줘' — 코드에 문서 ID가 필요한데, 이것도 첨부 파일에서 알아서 뽑아달라고 했고요.
· 분석 모델을 명시 — 정성 분석(성과 요약, 리스크 진단)은 Gemini API를 코드 안에서 호출해 처리할 거라서, 쓸 모델까지 짚어주었어요.
❸ STEP 3. Gemini가 준 결과 확인
저희는 코드를 볼 줄 모르니까 일단 복사만 해놔요.
근데 요청한 구글 시트, 슬라이드 ID는 아직 안채워져 있네요?

괜찮아요. 이 부분이 각 문서의 코드이니까 그냥 복사해서 코드에 반영해줘요.

❹ STEP 4. 구글 시트 > 확장 프로그램 > Apps Script
코드를 붙여넣을 곳은 구글 시트 메뉴의 '확장 프로그램 → Apps Script'입니다.
script.google.com에서 새 프로젝트를 만들어도 되지만, 이 시트의 데이터를 참고해서 슬라이드를 업데이트하는 작업이라, 데이터가 있는 시트 안에서 스크립트를 열면 좋아요. 이렇게 열면 스크립트가 해당 시트에 바로 연결됩니다.

❺ STEP 5. 코드 붙여넣고, 빨간 표시 영역만 바꿔주기
Apps Script 에디터에 Gemini가 준 코드를 붙여넣고, 내 값으로 바꿔야 하는 부분만 수정합니다. 위쪽에 모여 있어요.
· GEMINI_API_KEY - Google AI Studio에서 발급받은 키
· SLIDE_ID / SHEET_ID - 각 문서의 ID
· API 모델명 - 구버전으로 나온 부분을 최신 모델로 수정

자세히 보시면 날짜 부분이 4월 28일로 고정되어 있어요.
이 정도만 코드에서 볼 줄 알면 뭘 고쳐야할지가 보여요.
코드를 조금 내려보면 Gemini API를 호출하는 부분도 있는데, 구경해보시면 재미있어요. 시트 데이터를 요약해서 넘기고 '성과 1문장, 리스크 1문장, 이슈 3개, 액션 아이템 3개를 JSON으로 응답하라'고 시키는 프롬프트가 코드 안에 들어있거든요. 우리가 구분자로 심었던 자리들이 여기서 채워지는 겁니다.

❻ STEP 6. 첫 시도 실패! 에러도 Gemini에게 던지세요
저장하고 실행 버튼을 눌러 권한을 승인했더니... 에러가 났습니다.

무슨 에러인지 이해할 필요 없어요. 에러 메시지를 그대로 복사해서 Gemini에게 던지면 됩니다. 이때 저는 STEP 3에서 발견해뒀던 문제들을 같이 얹어서 물어봤어요. "행이나 날짜가 늘어나더라도 유동적으로 최신 날짜, 최신 데이터를 가져왔으면 좋겠어. 그리고 이런 오류가 났어" 하고요.

이렇게 하면 에러 수정 + 미뤄뒀던 개선사항을 한 번에 해결한 코드를 받을 수 있습니다. 문제를 발견했을 때 바로바로 고치려 하지 말고, 모아뒀다가 한 번에 요청하는 게 왕복 횟수를 줄이는 요령이에요.
❼ STEP 7. 다시 실행, 그리고 결과 확인
새 코드를 붙여넣고, 문서 ID와 API 키를 다시 적용해서 실행했더니 이번에는 성공했습니다.

슬라이드를 열어보면, 구분자를 심어뒀던 모든 자리가 채워져 있습니다. 날짜와 달성률 같은 수치는 물론이고, 성과 요약·리스크 진단·이슈별 원인 분석·차주 액션 아이템 같은 정성적인 분석 텍스트까지 전부요.

이제 다음 주부터는 시트에 데이터가 쌓인 상태에서 실행 버튼 하나만 누르면 보고서가 완성됩니다.
구글앱스스크립트 트리거 설정으로 매주 월요일 아침 자동 실행까지 걸어두면 완전 무인 운영도 가능하고요.
📌 오늘의 정리
과정을 다시 요약하면 이렇습니다.
❶ 슬라이드 템플릿에 {{}} 구분자로 업데이트 위치 표시 (연결된 표는 제외)
❷ Gemini에 시트·슬라이드 파일을 첨부하고 코드 요청❸
받은 코드에서 내 조건이 반영됐는지 훑어보기
❹ 시트의 확장 프로그램 → Apps Script에 붙여넣기
❺ API 키·문서 ID만 수정하고 실행
❻ 에러가 나면 메시지 복사 → Gemini 재문의 (개선사항도 함께)❼ 수정 코드로 재실행 → 완성
핵심은 이거예요. 코드를 이해하는 능력보다, 상황을 정확히 설명하고 문제를 그대로 전달하는 능력이 자동화의 전부라는 것. 구글 시트로 만드는 보고서가 있으시다면, 이번 주에 꼭 한 번 시도해보세요!
이런 자동화, 더 깊게 배우고 싶다면
오늘 내용은 제 강의 '일잘러를 위한 구글 AI 생태계 바이블'의 한 클립을 정리한 내용입니다.
Gemini·NotebookLM부터 Apps Script 업무 자동화, AppSheet 앱 만들기까지구글 AI 생태계 전체를 실습으로 다루고 있어요. :)


의견을 남겨주세요