본문 바로가기
AI

구글 앱스 스크립트로 출석체크 앱 만들기

by 에버리치60 2025. 11. 22.

Part 3: 구글 앱스 스크립트로 출석체크 앱 만들기

⚙️ Part 3: 구글 앱스 스크립트로 출석체크 앱 만들기

서버 없이 무료로 자동화 앱 개발하기

🕐 예상 소요시간: 40분

🎯 이 파트에서 배우는 것

  • 구글 앱스 스크립트가 무엇인지 이해하기
  • 스프레드시트와 연동하여 출석체크 앱 만들기
  • 앱을 웹 앱으로 배포하여 누구나 사용할 수 있게 하기
  • QR코드로 간편하게 출석체크 받기

🧠 구글 앱스 스크립트란?

구글 앱스 스크립트(Google Apps Script)는 구글에서 제공하는 무료 자동화 도구입니다. 프로그래밍을 몰라도 AI의 도움을 받아 다양한 앱을 만들 수 있습니다!

🆓

완전 무료

서버 비용, 호스팅 비용이 전혀 없습니다. 구글이 모든 인프라를 무료로 제공합니다.

🔗

구글 서비스 연동

스프레드시트, 드라이브, Gmail, 캘린더, 폼 등 모든 구글 서비스와 쉽게 연결됩니다.

📱

웹 앱 배포

만든 앱을 URL로 공유하면 PC, 스마트폰 어디서든 사용할 수 있습니다.

항목 설명
서버 필요 없음 (구글이 무료 제공)
비용 완전 무료
프로그래밍 언어 자바스크립트 기반 (AI가 대신 작성해줌)
연동 가능한 서비스 스프레드시트, 드라이브, Gmail, 캘린더, 슬라이드, 폼 등

📁 앱스 스크립트 파일 구조

앱스 스크립트 프로젝트는 크게 2가지 종류의 파일로 구성됩니다:

📂 내 앱스 스크립트 프로젝트 │ ├── 📄 code.gs ← 백엔드 (서버 로직) │ 데이터 처리, 스프레드시트 연동 │ └── 📄 index.html ← 프론트엔드 (사용자 화면) 사용자가 보는 디자인, 버튼 등
📄 code.gs (백엔드)

• 데이터 저장/불러오기
• 스프레드시트 읽기/쓰기
• 로직 처리

→ Gemini가 잘 만들어줌!
📄 index.html (프론트)

• 화면 디자인
• 버튼, 입력창
• 사용자 인터페이스

→ Claude가 예쁘게 만들어줌!
핵심 포인트: 코드를 직접 작성할 필요가 없습니다!
원하는 기능을 AI에게 설명하면 코드를 만들어줍니다.
우리는 기획과 설계만 하면 됩니다.

🔨 출석체크 앱 만들기 실습

사전 준비

구글 계정 - Gmail 계정이 있으면 됩니다
크롬 브라우저 - 다른 브라우저도 가능하지만 크롬 권장
1
스프레드시트 사본 만들기

먼저 출석체크 데이터를 저장할 스프레드시트를 준비합니다.

  1. 제공된 출석체크 시트 URL을 클릭합니다
    URL 끝이 /copy로 되어 있으면 자동으로 사본 만들기 화면이 열립니다
  2. "사본 만들기" 버튼을 클릭합니다
  3. 내 구글 드라이브에 새 파일이 생성됩니다
    파일 이름을 "우리기관 출석체크" 등으로 변경해도 됩니다
2
시트 구조 확인하기

스프레드시트에는 2개의 시트(탭)가 있습니다:

시트 이름 역할 컬럼(열)
출석현황 출석 데이터가 자동으로 기록되는 곳 날짜, 시간, 이름
참석자리스트 참석 예정자 명단 이름, 출석날짜, 입장시간...
📍 시트 탭 확인하기
┌─────────────────────────────────────────────┐
│                                             │
│   날짜    │    시간    │    이름           │
│  11/22   │   09:30   │   홍길동           │
│  11/22   │   09:32   │   김철수           │
│          │           │                     │
├─────────────────────────────────────────────┤
│ 출석현황참석자리스트 │ + │        │
└─────────────────────────────────────────────┘
       ↑ 하단의 시트 탭들
              
시트 이름 주의!
시트 이름은 코드와 정확히 일치해야 합니다!

✅ "참석자리스트" (띄어쓰기 없음)
❌ "참석자 리스트" (띄어쓰기 있음) → 오류 발생!
3
앱스 스크립트 편집기 열기

스프레드시트에서 앱스 스크립트 편집기를 엽니다.

  1. 스프레드시트 상단 메뉴에서 확장 프로그램을 클릭합니다
  2. 드롭다운 메뉴에서 Apps Script를 클릭합니다
  3. 새 탭에서 앱스 스크립트 편집기가 열립니다
    왼쪽에 code.gs 파일이 보입니다
📍 확장 프로그램 메뉴 찾기
파일  편집  보기  삽입  서식  데이터  도구  확장 프로그램  도움말
                                              ↓
                                  ┌─────────────────────┐
                                  │ 부가기능            │
                                  │ 부가기능 관리       │
                                  │ Apps Script       │ ← 클릭!
                                  └─────────────────────┘
              
4
앱스 스크립트 편집기 화면 이해하기

앱스 스크립트 편집기의 화면 구성을 알아봅니다.

📍 앱스 스크립트 편집기 화면
┌─────────────────────────────────────────────────────┐
│  ← 🏠  │  📁 파일  │  ▶️ 실행  │  🚀 배포  │    │
├─────────┬───────────────────────────────────────────┤
│         │                                           │
│ 📄 파일 │   1 │ function doGet() {                  │
│         │   2 │   // 코드 내용이 여기에...          │
│ code.gs │   3 │ }                                   │
│         │                                           │
│ + 파일  │          (코드 편집 영역)                 │
│   추가  │                                           │
├─────────┴───────────────────────────────────────────┤
│   code.gs  ← 주황색 점 = 저장 안 됨!           │
└─────────────────────────────────────────────────────┘
              
주황색 동그라미(●)의 의미

파일명 왼쪽에 주황색 점이 보이면 = 저장되지 않은 변경사항이 있다는 뜻!
저장하면 동그라미가 사라집니다.
5
스프레드시트 URL 확인하기

code.gs 파일에서 스프레드시트 URL이 올바르게 설정되어 있는지 확인합니다.

  1. 왼쪽 파일 목록에서 code.gs를 클릭합니다
  2. 코드에서 스프레드시트URL 또는 SPREADSHEET_URL 부분을 찾습니다
    보통 코드 상단에 있습니다
  3. 이 URL이 내 스프레드시트 URL과 일치하는지 확인합니다
    스프레드시트에서 확장 프로그램으로 열었다면 자동으로 연결되어 있습니다
// 코드 상단에서 이런 부분을 찾으세요: const SPREADSHEET_URL = "https://docs.google.com/spreadsheets/d/여기에_스프레드시트_ID/edit"; // 또는 const SHEET_ID = "스프레드시트_ID";
6
저장하기

변경사항이 있다면 저장합니다.

  1. 파일명 옆에 주황색 점이 있는지 확인합니다
  2. 상단 툴바에서 💾 저장 버튼 (디스크 모양)을 클릭합니다
    또는 키보드에서 Ctrl + S 를 누릅니다
    (Mac: ⌘ Cmd + S)
  3. 주황색 점이 사라지면 저장 완료!
7
웹 앱으로 배포하기

만든 앱을 누구나 사용할 수 있도록 웹에 배포합니다. 이 단계가 가장 중요합니다!

  1. 오른쪽 상단의 배포 버튼을 클릭합니다
  2. 새 배포를 선택합니다
  3. "유형 선택" 옆의 ⚙️ 톱니바퀴 아이콘을 클릭합니다
  4. "웹 앱"을 선택합니다
📍 배포 메뉴 찾기
┌─────────────────────────────────────────────────────┐
│                              🚀 배포 ▼        │
│                                    ↓               │
│                         ┌─────────────────┐        │
│                         │ 배포 관리       │        │
│                         │ 새 배포         │ ← 클릭! │
│                         │ 배포 테스트     │        │
│                         └─────────────────┘        │
└─────────────────────────────────────────────────────┘
              
8
배포 설정하기

배포 옵션을 설정합니다.

  1. 설명 (선택사항): "출석체크 앱 v1" 등 메모 입력
  2. 실행할 사용자: 선택
    앱이 내 권한으로 스프레드시트에 데이터를 씁니다
  3. 액세스 권한이 있는 사용자: 모든 사용자 선택
    ⚠️ 중요! "모든 사용자"를 선택해야 다른 사람도 앱을 사용할 수 있습니다
  4. "배포" 버튼을 클릭합니다
📍 배포 설정 화면
┌─────────────────────────────────────────────┐
│            새 배포                      [X] │
├─────────────────────────────────────────────┤
│                                             │
│  유형 선택: ⚙️                              │
│  ┌─────────────────────────────┐            │
│  │ 📱 웹 앱                    │ ← 선택   │
│  └─────────────────────────────┘            │
│                                             │
│  설명: [출석체크 앱 v1        ]             │
│                                             │
│  실행할 사용자:                             │
│  ┌─────────────────────────────┐            │
│  │ 나                      ▼  │            │
│  └─────────────────────────────┘            │
│                                             │
│  액세스 권한이 있는 사용자:                 │
│  ┌─────────────────────────────┐            │
│  │ 모든 사용자              ▼  │ ← 중요!  │
│  └─────────────────────────────┘            │
│                                             │
│                    배포                │
└─────────────────────────────────────────────┘
              
액세스 권한 설정 주의!

"나만" 선택 시 → 본인만 앱 사용 가능
"모든 사용자" 선택 시 → 링크가 있는 누구나 사용 가능

출석체크 앱은 다른 사람들이 사용해야 하므로 "모든 사용자"를 선택하세요!
9
권한 승인하기 (첫 배포 시)

처음 배포할 때는 권한 승인이 필요합니다. 총 2번 승인해야 합니다!

  1. "액세스 승인" 버튼이 나타나면 클릭합니다
  2. 구글 계정을 선택합니다 (로그인한 계정)
  3. "이 앱은 확인되지 않았습니다" 경고가 나타납니다
    😱 무서워 보이지만 정상입니다! 내가 만든 앱이라서 그래요.
  4. 왼쪽 하단의 "고급"을 클릭합니다
  5. "(프로젝트 이름)(으)로 이동(안전하지 않음)"을 클릭합니다
  6. 권한 요청 화면에서 "허용"을 클릭합니다
📍 권한 승인 과정
[1단계] "액세스 승인" 클릭
            ↓
[2단계] 구글 계정 선택
            ↓
[3단계] "이 앱은 확인되지 않았습니다" 화면
        ┌─────────────────────────────────┐
        │                                 │
        │  ⚠️ 이 앱은 확인되지 않았습니다 │
        │                                 │
        │  이 앱은 아직 Google의          │
        │  확인을 받지 않았습니다.        │
        │                                 │
        │           [뒤로]                │
        │                                 │
        │  고급 ← 클릭!                   │
        └─────────────────────────────────┘
            ↓
[4단계] "(프로젝트명)(으)로 이동" 클릭
            ↓
[5단계] "허용" 클릭 → 완료!
              
왜 "안전하지 않음"이라고 뜨나요?

구글에 정식 등록된 앱이 아니라 내가 직접 만든 앱이기 때문입니다.
내가 만든 앱이므로 안전합니다. 걱정하지 마세요!
10
앱 URL 복사하기

배포가 완료되면 앱의 URL이 생성됩니다!

  1. 배포 완료 화면에서 웹 앱 URL이 표시됩니다
    https://script.google.com/macros/s/... 형태의 긴 URL
  2. "복사" 버튼을 클릭하여 URL을 복사합니다
  3. "완료"를 클릭합니다
📍 배포 완료 화면
┌─────────────────────────────────────────────┐
│            배포 완료! ✅                    │
├─────────────────────────────────────────────┤
│                                             │
│  웹 앱                                      │
│                                             │
│  URL:                                       │
│  ┌─────────────────────────────────────┐    │
│  │ https://script.google.com/macros/  │    │
│  │ s/AKfycbw.../exec                   │    │
│  └─────────────────────────────────────┘    │
│                                             │
│           복사  ← 클릭!                 │
│                                             │
│                    완료                │
└─────────────────────────────────────────────┘
              
이 URL을 QR코드로 만들어서 배포하면,
참석자들이 스마트폰으로 바로 출석체크할 수 있습니다!

QR코드 만들기: 구글에서 "QR코드 생성기" 검색
11
앱 테스트하기

만든 앱이 잘 작동하는지 확인합니다.

  1. 새 브라우저 탭을 열고 복사한 URL을 붙여넣기합니다
  2. 출석체크 앱 화면이 나타납니다
    첫 접속 시 "고급 → 안전하지 않음으로 이동" 과정이 필요할 수 있습니다
  3. 이름을 입력하고 "출석" 버튼을 클릭합니다
  4. 스프레드시트로 돌아가서 "출석현황" 시트를 확인합니다
    날짜, 시간, 이름이 자동으로 기록되어 있으면 성공! 🎉

🔄 앱 수정 후 업데이트 방법

코드를 수정한 후에는 새로 배포해야 변경사항이 적용됩니다.

  1. code.gs 또는 index.html 파일 수정
  2. Ctrl + S 로 저장
  3. 배포배포 관리 클릭
  4. 오른쪽 상단 ✏️ 연필 아이콘 클릭
  5. 버전을 "새 버전"으로 변경
  6. "배포" 클릭
코드 수정 후 저장만 하면 적용되지 않습니다!
반드시 "새 버전으로 배포"를 해야 변경사항이 반영됩니다.

🔧 자주 발생하는 오류와 해결방법

오류 상황 해결방법
스크립트 오류 발생 시트 이름이 코드와 일치하는지 확인 (대소문자, 띄어쓰기)
권한 오류 배포 시 "모든 사용자" 설정 확인, 권한 승인 다시 진행
데이터가 안 들어감 스프레드시트 URL이 올바른지 확인
수정해도 안 바뀜 저장 후 "새 버전"으로 다시 배포
앱이 안 열림 URL을 새 탭에 붙여넣고, "고급 → 이동" 클릭

❓ 자주 묻는 질문 (FAQ)

코드를 직접 작성해야 하나요?
아니요! AI(Gemini, Claude 등)에게 원하는 기능을 설명하면 코드를 작성해줍니다. 우리는 기획만 하면 됩니다.
앱을 수정하면 기존 URL이 바뀌나요?
아니요! "배포 관리"에서 업데이트하면 같은 URL로 새 버전이 적용됩니다. QR코드를 다시 만들 필요 없어요.
몇 명까지 동시에 사용할 수 있나요?
구글 무료 계정 기준으로 하루 약 20,000회 실행 가능합니다. 일반적인 출석체크에는 충분합니다.
스마트폰에서도 사용 가능한가요?
네! 웹 앱이므로 스마트폰 브라우저에서 URL에 접속하면 바로 사용할 수 있습니다.

✅ 실습 완료 체크리스트

스프레드시트 사본 만들기 완료
시트 구조(출석현황, 참석자리스트) 확인
앱스 스크립트 편집기 열기 완료
코드 저장 완료 (주황색 점 사라짐)
웹 앱으로 배포 완료
권한 승인 완료 (2회)
앱 URL 복사 완료
테스트 성공 (출석 데이터가 시트에 기록됨)

👉 더 배워보기

앱스 스크립트로 만들 수 있는 것들:
  • 📋 자동 수료증 발급 시스템
  • 📧 자동 이메일 발송
  • 📊 설문 결과 자동 분석
  • 🗓️ 일정 자동 등록
  • 📝 문서 자동 생성

Gemini에게 "구글 앱스 스크립트로 ○○○ 만들어줘"라고 요청해보세요!