발표 노트

노트 내용이 여기에 표시됩니다.

구글 앱스 스크립트로
시작하는 업무 자동화

반복 작업은 줄이고, 중요한 일에 집중하는 방법

2025년 11월 20일

백패커 AI Session #13 : GAS 기초 교육 (1시간)

📋 목차

  • Part 1. 구글앱스스크립트 소개
    • 동작 원리와 비유
    • 구글 생태계와의 연계
    • 외부 서비스 연동 (Slack, Notion, n8n)
    • 생성형 AI 활용 가능성
  • Part 2. 업무 자동화를 위한 구글시트 함수
    • IMPORTRANGE, ARRAYFORMULA 등 핵심 함수
  • Part 3. GAS 주요 메뉴 및 사용법
    • 코드 편집기, 트리거, 배포 등
  • Part 4. 실전 업무 활용 사례 (8가지) + AI 코드 요청법
  • Part 5. 요약 및 Q&A

🎯 학습 목표

1. GAS 개념 이해

구글앱스스크립트가 무엇이고, 어떻게 작동하는지 이해

2. 구글시트 함수 활용

자동화에 필수적인 시트 함수들을 익히기

3. 실전 활용

8가지 실제 사례를 통해 업무에 바로 적용할 아이디어 습득

4. 효율성 향상

반복 작업을 줄여 중요한 업무에 집중할 수 있는 능력 배양

💭 왜 우리에게 GAS가 필요한가?

문제 상황

  • 매일 반복되는 데이터 복사-붙여넣기
  • 수동으로 보내는 알림 메시지
  • 엑셀 수식 복잡하게 얽힌 파일
  • 여러 시트를 오가며 데이터 정리
  • "이거 자동으로 안 될까?" 하는 생각

해결책

  • 구글앱스스크립트 = 구글 생태계의 만능 자동화 도구
  • 코딩 몰라도 AI의 도움으로 가능!
  • 무료로 사용 가능한 클라우드 서버

핵심 메시지

"오늘 배울 GAS는 여러분의 업무 시간을 하루 1시간씩 돌려줄 수 있는 도구입니다!"

Part 1

구글앱스스크립트 소개 및 기본 개요

🚀 구글앱스스크립트란?

정의

구글이 제공하는 클라우드 기반의 스크립팅 언어

  • JavaScript 기반 (하지만 코딩 몰라도 괜찮음!)
  • 구글 워크스페이스(스프레드시트, 문서, 드라이브, Gmail 등)를 자동화하고 확장

특징

  • 🌐 웹 기반: 브라우저에서 바로 코드 작성 및 실행
  • ☁️ 무료 서버: 구글이 24시간 서버를 무료로 제공
  • 🔗 강력한 연동: 구글 서비스는 물론 외부 API와도 연결 가능
  • 🤖 AI 활용 가능: ChatGPT/Claude가 코드를 대신 작성해줌

비유

"엑셀 매크로의 강력한 형제 + 클라우드 서버 + API 연동 능력"
또는
"구글 생태계의 집사(Butler) - 명령만 내리면 알아서 일 처리"

⚙️ GAS의 동작 원리 (쉬운 비유)

🍳 비유 1: 레시피 자동 실행기

  • 스프레드시트 = 재료 창고 (데이터)
  • GAS 스크립트 = 요리 레시피 (로직)
  • 트리거 = 타이머 (자동 실행)
  • 결과물 = 완성된 요리 (자동화된 업무)

💼 비유 2: 사무실 비서

  • 매일 아침 9시 → 전날 매출 집계해서 메일 발송
  • 시트에 신규 데이터 입력 → 자동으로 Slack에 알림
  • 설문 응답 도착 → 자동으로 정리해서 대시보드 업데이트
📊

구글시트

데이터

GAS 스크립트

자동화 로직

🔗

외부 서비스

Slack, Gmail 등

💪 구글 생태계 내 GAS의 강력함

구글 워크스페이스 연동

  • 📊 스프레드시트: 데이터 읽기/쓰기, 차트 생성, 시트 조작
  • 📧 Gmail: 자동 메일 발송, 라벨 관리, 첨부파일 처리
  • 📅 캘린더: 일정 자동 생성, 회의실 예약, 리마인더
  • 📁 드라이브: 파일 복사/이동/삭제, 권한 관리, 폴더 구조화
  • 📝 문서(Docs): 템플릿 기반 문서 자동 생성
  • 📋 설문(Forms): 응답 자동 처리 및 알림

강력한 이유

  • ✅ 모든 서비스가 하나의 계정으로 연결
  • ✅ 별도 인증 없이 바로 접근 가능
  • ✅ 데이터가 자동 갱신됨(지연 가능)

핵심 메시지

"GAS는 구글 생태계의 허브이자, 모든 서비스를 연결하는 마법의 접착제!"

🔗 외부 서비스 연동 (Slack, Notion, n8n 등)

💬
1

Slack 연동

활용: 시트 업데이트 시 자동 알림

방법: Webhook URL 또는 Slack API

"신규 주문 접수 시 Slack에 자동 알림"

📓
2

Notion 연동

활용: 구글시트 → Notion DB 동기화

방법: Notion API

"프로젝트 현황을 Notion에 자동 업데이트"

🔗
3

n8n 연동

활용: 복잡한 워크플로우 자동화

방법: Webhook 양방향 통신

"Redash → 구글시트 → Slack 파이프라인"

핵심 메시지

API 지원 서비스라면 뭐든 연동 가능! (Trello, Asana, Jira, 사내 시스템 등)

🤖 생성형 AI를 활용한 GAS 개발

"코딩을 몰라도 GAS를 만들 수 있는 이유!"

AI 활용 프로세스

1

아이디어 구상

"이런 걸 자동화하고 싶어!"

2

AI에게 요청

ChatGPT/Claude에게 자연어로 설명

3

코드 생성

AI가 GAS 코드를 자동으로 작성

4

복사 & 붙여넣기

코드 편집기에 붙여넣기

5

실행 & 수정

테스트하고 필요시 AI에게 수정 요청

실제 프롬프트 예시
"구글시트 A열에 새 데이터가 추가되면, 해당 데이터를 Slack 채널에 메시지로 보내는 구글앱스스크립트 코드를 작성해줘"

AI가 해주는 것 ✅

  • 코드 작성
  • 함수 설명
  • 에러 디버깅
  • 기능 추가/수정

AI가 못하는 것 ❌

  • 여러분의 업무 이해
  • 정확한 요구사항 파악
  • 실제 실행 및 테스트

🛠️ 주요 제공 기능 개념 설명

📝

1. 코드 (함수)

JavaScript로 작성된 자동화 로직
.gs 파일 (스크립트), .html 파일 (UI)

📊

2. 실행 기록

스크립트 실행 내역 및 에러 로그 확인
디버깅에 필수!

3. 트리거

자동 실행의 핵심
시간 기반: 매일 9시, 매주 월요일 등
이벤트 기반: 시트 수정 시, 폼 제출 시 등

🚀

4. 배포

스크립트를 실제로 사용
웹 앱: URL로 접근 가능
API: 다른 서비스에서 호출
애드온: 마켓플레이스 배포

📚

5. 라이브러리

재사용 가능한 코드 모음
다른 사람이 만든 코드를 쉽게 가져다 쓸 수 있음

🔧

6. 서비스

구글 API 연동
Gmail API, Drive API 등 고급 기능 사용 가능

🎬 GAS 시작하기 - 어디서 어떻게?

방법 1: 구글시트에서 (가장 쉬움) ⭐

구글시트 → 확장 프로그램 → Apps Script

방법 2: 독립형 프로젝트

script.google.com 직접 접속

시작 화면 구성

왼쪽 패널

파일 목록
(Code.gs, index.html)

중앙 영역

코드 편집 공간

상단 버튼

실행, 디버그, 배포

첫 번째 스크립트 예시

function myFirstFunction() { Logger.log("Hello, GAS!"); // 로그 출력 SpreadsheetApp.getActiveSpreadsheet().getActiveSheet() .getRange("A1").setValue("안녕하세요!"); // A1에 값 입력 }

Part 2

GAS 전에 알아야 할 구글 시트 핵심 함수

📊 IMPORTRANGE - 다른 시트에서 데이터 가져오기

왜 필요한가?

여러 시트에 흩어진 데이터를 하나로 통합할 때 필수!

기본 문법

=IMPORTRANGE("스프레드시트URL", "시트명!범위")

실전 예시

예시 1: 전체 데이터 가져오기
=IMPORTRANGE("https://...", "매출!A1:D100")
예시 2: 특정 열만 가져오기
=IMPORTRANGE("https://...", "직원!A:C")

💡 주의사항

  • 첫 실행 시 "액세스 허용" 클릭 필요
  • 원본 시트 권한 있어야 함
  • 자동 갱신(지연 가능)

⚡ ARRAYFORMULA - 수식 자동 복사

왜 필요한가?

수식을 한 칸에만 입력하면 자동으로 모든 행에 적용!

기본 문법

=ARRAYFORMULA(수식)

Before vs After

❌ Before: 일일이 복사
// C1에 입력 =A1&" "&B1 // 아래로 드래그 복사 필요
✅ After: 한 번에 적용
// C1에 한 번만 입력 =ARRAYFORMULA(A1:A100&" "&B1:B100)

💡 고급 활용: 함수 조합

// ARRAYFORMULA + IFERROR + LEN 조합 =ARRAYFORMULA(IFERROR(LEN(A2:A100), 0)) // 각 셀의 글자 수를 계산하되, 에러는 0으로 표시

여러 함수를 조합하면 복잡한 작업도 한 줄로 처리 가능!

🛡️ IFERROR - 에러 없는 깔끔한 시트

왜 필요한가?

#N/A, #DIV/0! 같은 에러 메시지 대신 원하는 값 표시!

기본 문법

=IFERROR(시도할_수식, 에러시_대체값)

실전 예시

예시 1: 0으로 나누기 방지
=IFERROR(A1/B1, 0) // B1이 0이면 0 반환

계산 오류 방지에 필수

예시 3: 공백으로 처리
=IFERROR(A1*B1, "") // 에러 시 빈 칸

깔끔한 시트 유지

💡 ARRAYFORMULA와 조합

=ARRAYFORMULA(IFERROR(A1:A100/B1:B100, 0))

🔍 VLOOKUP - 데이터 조회의 기본

왜 필요한가?

다른 테이블에서 값을 찾아서 가져올 때 필수!

기본 문법

=VLOOKUP(찾을값, 찾을범위, 가져올열번호, FALSE)

실전 예시

예시: 직원명으로 부서 찾기
=VLOOKUP(A1, Sheet2!A:C, 2, FALSE) // A1의 이름을 Sheet2에서 찾아 2번째 열(부서) 가져오기

고급 활용: ARRAYFORMULA, IFERROR, LEN 조합

=ARRAYFORMULA( IF(LEN(A2:A)>0, // 빈 셀이 아니면 IFERROR( VLOOKUP(A2:A, Sheet2!A:B, 2, FALSE), // 조회 "미등록" // 없으면 "미등록" ), "" // 빈 셀은 빈칸으로 ) )

🧰 기타 유용한 함수 모음

1. FILTER - 조건 필터링

=FILTER(A2:C100, C2:C100>=1000000) // 매출 100만원 이상만

조건에 맞는 데이터만 자동으로 추출

3. UNIQUE - 중복 제거

=UNIQUE(A2:A100) // 중복 없이 고유값만

리스트에서 중복값 자동 제거

💡 학습 방법

직접 써보면서 익히세요! 함수는 이해보다 경험이 중요합니다.

Part 3

구글앱스스크립트 주요 메뉴 및 사용법

🖥️ 코드 편집기 인터페이스 소개

화면 구성

1. 왼쪽 패널

  • 📁 파일: Code.gs, index.html
  • 🕐 트리거: 자동 실행 설정
  • ⚙️ 프로젝트 설정

2. 중앙 편집 영역

  • 코드 작성 공간
  • 문법 하이라이팅
  • 자동완성 지원

3. 상단 버튼

  • ▶️ 실행: 선택한 함수 실행
  • 🐛 디버그: 디버깅 모드
  • 💾 저장: Ctrl+S
  • 🚀 배포: 웹앱/API로 배포

4. 파일 타입

  • .gs: 스크립트 코드
  • .html: 웹 UI

💡 유용한 단축키

  • Ctrl+클릭: 함수 정의로 이동
  • Ctrl+/: 주석 토글
  • Ctrl+F: 찾기

📚 라이브러리 & 서비스 추가

1. 라이브러리 추가

용도

다른 사람이 만든 코드 재사용

방법

  1. 왼쪽 패널 "라이브러리 +" 클릭
  2. 스크립트 ID 입력
  3. 버전 선택 후 추가

2. 서비스 추가

용도

고급 구글 API 사용

주요 서비스

  • 📧 Gmail API
  • 📅 Calendar API
  • 🎨 Slides API
  • 📊 Sheets API

💡 외부 API 연동

UrlFetchApp.fetch() 사용으로 Slack, Notion, 사내 시스템 등 REST API 호출 가능!

⏰ 트리거 - 자동 실행의 핵심

트리거란?

특정 조건에서 스크립트를 자동으로 실행하는 기능

1. 시간 기반 트리거 ⏰

  • 매일 오전 9시
  • 매주 월요일 10시
  • 매월 1일
  • 1시간마다

설정 방법

  1. 왼쪽 패널 "트리거" 클릭
  2. "+ 트리거 추가" 클릭
  3. 함수 선택, 이벤트 유형 선택
  4. 저장

2. 이벤트 기반 트리거 📝

스프레드시트 관련

  • onOpen: 시트 열 때
  • onEdit: 셀 수정 시
  • onChange: 구조 변경 시

폼 관련

  • onFormSubmit: 설문 응답 제출 시

⚠️ 자주 발생하는 오류

권한 부족

첫 실행 시 권한 승인 필요

실행 시간 초과

6분 제한

할당량 초과

일반 계정 90분/일

❓ 에러가 생겼을 때 어떻게 해결하나요?

핵심 메시지

코드가 안 돌아가는 건 당연합니다!
개발자도 매일 에러를 만나요. 차이는 "에러 메시지를 읽고 AI에게 물어본다"는 것!

🔍 로그(Log)가 뭔가요?

비행기 블랙박스처럼,
코드가 실행되는 과정을 기록하는 것

예: "A1 셀 값을 읽었어요"
"에러 발생! null 값입니다"

🐛 디버깅(Debugging)이 뭔가요?

벌레(Bug)를 잡는다는 뜻!
코드의 문제를 찾아서 고치는 것

예: 에러 메시지를 보고
"아, 시트명이 틀렸구나!" 발견

💡 비개발자를 위한 해결 프로세스

1️⃣ 에러 발생!

코드가 안 돌아감

2️⃣ 로그 확인

무슨 에러인지 읽기

3️⃣ AI에게 물어보기

ChatGPT/Claude에게 복붙

4️⃣ 해결!

AI가 알려준 대로 수정

🎯 핵심 포인트

코드를 직접 고칠 필요 없어요! 에러 메시지만 잘 읽고 AI에게 전달하면 끝

🔍 에러 로그 확인하고 AI에게 알려주기

1️⃣ 에러 로그는 어디서 볼까요?

✅ 방법 1: 실행 로그 패널

  1. 왼쪽 패널에서 "실행 로그" 클릭
  2. 최근 실행 기록에서 빨간색 ❌ 표시 찾기
  3. 클릭하면 에러 메시지 나옴

✅ 방법 2: 실행 후 바로

  1. 코드 실행 (▶ 버튼 클릭)
  2. 하단에 나타나는 팝업 확인
  3. "로그 보기" 또는 "실행 로그" 클릭

2️⃣ AI 프롬프트 예시

"구글 앱스 스크립트로 시트의 A열 데이터를 읽으려고 했는데 에러가 났어. 에러 메시지: TypeError: Cannot read properties of null (reading 'getRange') at myFunction(Code.gs:5) 문제가 발생한 코드: const sheet = SpreadsheetApp.getActiveSheet(); const data = sheet.getRange('A1:A10').getValues(); 뭐가 문제일까? 어떻게 고쳐야 해?"

💡 추가 팁

  • 스크린샷도 함께 보내면 AI가 더 정확하게 이해해요
  • 에러가 반복되면 전체 코드도 함께 공유하세요
  • AI가 준 해결책을 그대로 적용하고, 안 되면 다시 물어보세요!

🔐 스크립트 속성 - 비밀 정보 관리

스크립트 속성이란?

API 키, 비밀번호, URL 등을 안전하게 저장하는 공간

왜 필요한가?

❌ 나쁜 방법

코드에 API 키 직접 작성
→ 공유 시 유출 위험

✅ 좋은 방법

스크립트 속성에 저장
→ 코드 공유해도 안전

설정 방법

  1. 왼쪽 패널 "프로젝트 설정" (⚙️)
  2. "스크립트 속성" 탭
  3. "속성 추가" 클릭
  4. 속성(키), 값 입력

💡 속성 유형

  • 스크립트 속성: 모든 사용자 공통
  • 사용자 속성: 사용자별 개별 저장
  • 문서 속성: 특정 문서에만 저장

UI에서 직접 관리 가능한 것은 스크립트 속성뿐입니다. 사용자/문서 속성은 코드에서 관리합니다.

🚀 배포 - 내 스크립트를 세상에!

1. 웹 앱으로 배포 🌐

용도

URL로 접근 가능한 웹사이트

필수: doGet() 또는 doPost() 함수

배포 방법

  1. 우상단 "배포" → "새 배포"
  2. 유형 선택: "웹 앱"
  3. 실행 권한 설정
  4. 액세스 권한 선택
  5. "배포" → URL 복사

2. API로 배포 🔌

다른 서비스에서 호출 가능한 API

웹 앱 배포 후 POST 요청 받기

인증: OAuth 2.0(사용자/서비스 계정) 필요

3. 애드온으로 배포 🧩

Google Workspace Marketplace에 배포

(고급 주제)

웹 앱 예시 코드

function doGet(e) { return HtmlService.createHtmlOutputFromFile('index') .setTitle('내 첫 웹 앱'); }

⚠️ 배포 시 주의사항

  • 🔒 민감한 정보는 스크립트 속성에!
  • 🔄 버전 관리 활용
  • ⚠️ "나로 실행" vs "사용자로 실행" 차이 이해

Part 4

다양한 업무 활용 사례

💼 8가지 실전 사례 미리보기

1. 🎴 비상연락망 프로필 카드

시트를 웹페이지로

2. 📸 비상연락망 사진 링크

드라이브 파일 자동 링크

3. 📊 시트 to 시트 데이터 정리

데이터 재가공

4. 🔄 설문 중복 데이터 처리

자동 정리

5. 📈 통계표 원클릭 생성

버튼 하나로 완성

6. 🔤 커스텀 함수 만들기

숫자→한글 변환

7. 💬 슬랙 경매 알리미

슬랙 연동

8. 🌏 글로벌 업무 대시보드

종합 대시보드

💡 학습 방식

각 사례마다 "문제 → 해결 → 핵심 코드 → 배운 점" 구조로 설명합니다.

🎴 사례 1: 비상연락망 프로필 카드

📌 문제 상황

  • 엑셀/시트는 보기 불편함
  • 사진 포함 카드 형태로 보고 싶음
  • 검색 기능 필요

✅ 해결 방법

구글시트 데이터를 웹페이지(카드 UI)로 변환

🔧 어떻게 작동하나요?

  • ① 시트에서 데이터를 가져옴
  • ② 카드 디자인으로 변환
  • ③ 웹페이지로 누구나 볼 수 있게 공개

💡 핵심 아이디어

시트 = 데이터베이스 + GAS = 웹사이트 생성기
→ 데이터만 시트에 입력하면, 자동으로 예쁜 웹페이지가 만들어집니다!

🎓 이런 점이 좋아요

  • 시트만 수정하면 웹페이지도 자동 업데이트
  • 링크만 공유하면 누구나 볼 수 있음
  • 모바일에서도 예쁘게 보임

📸 사례 2: 비상연락망 사진 링크 생성

📌 문제 상황

드라이브 사진 100장을 시트에 링크로 연결하려면
→ 파일마다 "공유 → 링크 복사 → 붙여넣기" 반복... 😫

✅ 해결 방법

폴더만 지정하면 모든 파일 링크를
자동으로 시트에 기록!

🔧 어떻게 작동하나요?

  • ① 구글 드라이브 폴더 선택
  • ② GAS가 모든 파일을 자동으로 찾음
  • ③ 파일명과 링크를 시트에 정리

💡 핵심 아이디어

반복 작업 = 자동화 기회!
100번 복사 붙여넣기 할 시간에 GAS 실행 버튼 한 번 클릭!

🎓 이런 점이 좋아요

  • 100개 파일도 1초 만에 처리
  • 실수로 빠뜨린 파일 없음
  • 새 파일 추가되면 다시 실행하면 끝

📊 사례 3: 시트 to 시트 데이터 재가공

📌 문제 상황

원본 시트 데이터를 다른 형태로 정리 필요
(예: 필터링, 계산, 날짜 변환)

✅ 해결 방법

버튼 클릭 → 자동으로 데이터 가공 → 다른 시트에 정리

🔧 어떻게 작동하나요?

  • ① 원본 시트에서 데이터 읽기
  • ② 필요한 조건으로 필터링
  • ③ 계산/변환 적용
  • ④ 가공 시트에 결과 저장

💡 핵심 아이디어

데이터 가공도 자동화!
수식으로 복잡한 경우, GAS로 로직을 짜면 더 자유롭게 처리 가능

🎓 이런 점이 좋아요

  • 복잡한 조건도 자유롭게 처리
  • 시트 간 데이터 흐름 자동화
  • 정기적으로 반복 실행 가능

🔄 사례 4: 구글설문 중복 데이터 정리

📌 문제 상황

구글 설문에서 같은 사람이 여러 번 제출
→ 최신 응답만 남기고 이전 것은 삭제하고 싶음

✅ 해결 방법

설문 제출될 때마다 자동으로 중복 체크 및 정리

🔧 어떻게 작동하나요?

  • ① 설문 제출되면 GAS 자동 실행
  • ② 이메일 주소로 중복 확인
  • ③ 오래된 응답 자동 삭제
  • ④ 최신 응답만 유지

💡 핵심 아이디어

이벤트 트리거 = 완전 자동화!
설문 제출 시점에 자동으로 코드가 실행되어 즉시 정리

🎓 이런 점이 좋아요

  • 설문 응답 즉시 자동 정리
  • 수동 확인 불필요
  • 항상 최신 상태 유지

📈 사례 5: 통계표 원클릭 생성

📌 문제 상황

매주/매월 같은 형식의 통계표 만들기
(팀별 매출 합계, 월별 집계 등)

✅ 해결 방법

버튼 하나로 통계표 자동 생성

🔧 어떻게 작동하나요?

  • ① 원본 데이터를 읽어옴
  • ② 그룹별(팀별, 월별)로 집계
  • ③ 자동으로 통계 시트에 출력
  • ④ 차트도 자동 생성 가능

💡 핵심 아이디어

정기 보고서도 자동화!
매번 수작업으로 집계하는 시간을 단 1초로 줄이기

🎓 이런 점이 좋아요

  • 복잡한 집계도 버튼 하나로
  • 정기 보고서 빠르게 생성
  • 실수 없이 정확한 계산

🔤 사례 6: 커스텀 함수 (숫자→한글)

📌 문제 상황

계약서, 견적서에서 금액을 한글로 표기 필요
(예: 1,500,000 → "백오십만원")

✅ 해결 방법

시트에서 =numberToKorean(A1)
처럼 사용하는 나만의 함수 만들기

🔧 어떻게 작동하나요?

  • ① GAS에서 함수 작성
  • ② 숫자를 한글로 변환하는 로직 작성
  • ③ 시트에서 일반 함수처럼 사용
  • ④ 자동완성도 지원!

💡 핵심 아이디어

시트 함수를 직접 만들 수 있다!
SUM, IF처럼 원하는 기능을 직접 함수로 만들어서 사용

🎓 이런 점이 좋아요

  • 시트 기능을 무한대로 확장
  • 복잡한 로직을 함수로 재사용
  • 팀원과 함수 공유 가능

⚠️ 제약

  • 권한이 필요한 서비스 사용 불가
  • 수행 시간 제한: 약 30초 이내

💬 사례 7: 슬랙 경매 스레드 순위 알리미

📌 문제 상황

슬랙 경매 채널에서 입찰 순위를 알고 싶음
다양한 형식("1.9만원", "150000")을 파싱 필요

✅ 해결 방법

슬랙 메시지 수집 → 금액 파싱 → 순위 집계 → 결과 게시

🔧 어떻게 작동하나요?

  • ① 슬랙 API로 스레드 메시지 가져옴
  • ② 각 메시지에서 금액 추출
  • ③ 금액 높은 순으로 정렬
  • ④ Top 10 결과를 슬랙에 게시

💡 핵심 아이디어

외부 서비스 연동 = GAS의 진가!
슬랙, 노션, 트렐로 등 API가 있는 서비스는 모두 연동 가능

🎓 이런 점이 좋아요

  • 슬랙 워크플로우 자동화
  • 거의 실시간 데이터 집계
  • 팀 협업 도구와 통합

🌏 사례 8: 글로벌 업무 대시보드

📌 문제 상황

전 세계 지사 데이터를 한 곳에서 보고 싶음
(거의 실시간 업데이트, 다양한 데이터 통합)

✅ 해결 방법

  • 각 지사 시트를 IMPORTRANGE로 통합
  • GAS로 자동 집계 및 대시보드 생성
  • 웹 앱으로 배포

🔧 어떻게 작동하나요?

  • ① 각 지사 시트에서 데이터 가져옴
  • ② 통합 시트에 자동 모음
  • ③ GAS로 추가 계산 및 차트 생성
  • ④ 웹 대시보드로 시각화

💡 핵심 아이디어

시트 함수 + GAS + 웹 = 완벽한 대시보드!
복잡한 데이터 파이프라인도 구글 생태계에서 모두 해결

🎓 이런 점이 좋아요

  • 여러 데이터 소스를 하나로 통합
  • 자동 업데이트(지연 가능)
  • 별도 서버 없이 웹 대시보드 구축

🤖 핵심 스킬: AI에게 GAS 코드 완벽하게 받아내는 법

💡 왜 중요한가?

AI가 코드를 작성해줘도, 명확한 요청 = 정확한 코드 = 시간 절약

🎯 4단계 프로세스

1단계: 사전 준비 📋

  • 데이터 구조 파악
  • 목표 명확화
  • 레퍼런스 찾기

2단계: 맥락 제공 📸

  • 스크린샷 활용
  • 파일 공유
  • 상황 설명

3단계: 구체적 요청 🎯

  • 데이터 흐름 명확히
  • 원하는 결과 명시
  • 제약사항 공유
  • 작동 순서 상세히

4단계: 꼼꼼히 검증 ✅

  • 데이터 검증 (개수, 값, 형식)
  • 기능 검증 (정상/예외 케이스)
  • 성능 검증 (속도, 할당량)

💡 프롬프트 템플릿

"[상황] 구글시트에 [어떤 데이터]가 있습니다. [원하는 동작] [트리거]이 발생하면, [어떤 데이터]를 [어떻게 처리]해서 [어디로] 출력하고 싶습니다. [제약] 구글앱스스크립트만 사용, 외부 서버 불가"

🎓 추가 실전 팁 - 더 나은 코드 받는 법

DO's (이렇게 하세요) ✅

  • 데이터 구조를 명확히 파악하고 공유
  • 스크린샷과 예시를 충분히 제공
  • 제약 조건을 미리 알려주기
  • 단계별로 나눠서 요청
  • 테스트 데이터로 먼저 검증
  • 주석 많이 달아달라고 요청
  • 작동하는 코드는 백업
  • 에러 로그 전체 복사해서 공유

DON'Ts (하지 마세요) ❌

  • "알아서 해줘" 같은 막연한 요청
  • 한 번에 모든 기능 요청
  • 실제 데이터로 바로 테스트
  • 에러나도 로그 안 보고 "안 돼요"만 말하기
  • AI가 준 코드 이해 안 하고 무조건 복붙
  • 백업 없이 기존 코드 덮어쓰기
  • 검증 없이 운영 환경에 바로 적용

💡 마지막 조언

"AI는 당신의 생각을 읽을 수 없습니다.
명확하게 요청할수록, 정확한 코드를 받습니다.
처음엔 시간 걸려도, 명확히 요청하는 습관을 들이세요!"

Part 5

요약 및 Q&A

🎯 핵심 요약 (Takeaways)

오늘 배운 것

1. GAS는 구글 생태계의 자동화 도구

무료, 클라우드 기반, 강력한 연동

2. AI를 활용하면 코딩 몰라도 OK

ChatGPT/Claude가 코드 작성 도와줌

3. 시트 함수부터 시작하세요

IMPORTRANGE, ARRAYFORMULA, IFERROR 등

4. 트리거로 완전 자동화

시간 기반, 이벤트 기반

5. 8가지 활용 사례

프로필 카드, 사진 링크, 설문 처리, 슬랙 연동 등

💡 실천 가이드

1. 작게 시작하세요

"이거 자동화되면 좋겠다" → 간단한 것부터

2. AI에게 물어보세요

막히면 ChatGPT에게 코드와 에러 알려주기

🚀 다음 단계

오늘 배운 사례 중 하나를 직접 만들어보세요!
작은 성공 경험이 쌓이면 점점 복잡한 것도 가능!

❓ Q&A - 자주 묻는 질문

Q1. GAS는 무료인가요?

✅ 네! 구글 계정만 있으면 무료
단, 일일 실행 시간 제한 있음 (일반: 90분/일)

Q2. JavaScript를 몰라도 되나요?

✅ 가능! AI가 코드 작성 도와줌
기본 개념만 이해하면 충분

Q3. 엑셀 VBA와 뭐가 다른가요?

GAS: 클라우드 기반, 구글 서비스 연동, 무료 서버
VBA: 로컬 PC, MS Office 연동, 서버 별도

Q4. 트리거가 실행 안 돼요!

→ 권한 승인했는지 확인
→ 트리거 실행 기록 확인
→ 할당량 초과 여부 확인

Q5. API 키 노출 걱정돼요

스크립트 속성에 저장하면 안전!
코드 공유 시 속성은 공유 안 됨

Q6. 실행 속도가 너무 느려요

→ 일괄 처리 (getValues/setValues) 사용
→ 불필요한 API 호출 줄이기
→ 데이터 양 줄이기 (필터링)

📚 어디서 더 배울 수 있나요?

  • 공식 문서: developers.google.com/apps-script
  • YouTube 튜토리얼
  • ChatGPT/Claude에게 질문

🎉 수고하셨습니다!

오늘의 핵심 메시지

"작은 자동화가 모여 큰 효율을 만듭니다.
오늘 배운 것 하나만 실천해도 성공입니다!"

다음 액션 아이템

  • ✅ 오늘 배운 사례 중 하나 직접 만들어보기
  • ✅ 내 업무에서 자동화할 수 있는 것 찾기
  • ✅ AI에게 코드 작성 요청해보기

📚 참고 자료

  • 공식 문서: developers.google.com/apps-script
  • 💬 Slack 채널: #talk_ai_자동화 (사내)
  • 🤖 AI 도구: ChatGPT, Claude

질문이나 도움이 필요하시면 언제든 연락주세요! 💪