만들기 기록
구글폼 첨부파일 자동 분류 — 앱스 스크립트로 참가신청서 정리 (바이브코딩 #3)
안녕하세요. 인공지능으로 인생 점프하고 싶은 AI점퍼입니다.
공모전을 운영하면서 구글폼으로 신청서와 작품 파일을 함께 받았습니다. 응답은 표에 모이지만, 접수 자료를 확인하려면 첨부파일도 열어봐야 하죠. 누가 어떤 파일을 냈는지 찾고, 응모 부문별로 나누고, 빠진 서류가 있는지도 확인해야 합니다.
제가 필요했던 것은 접수 뒤에 이 자료들을 정리하는 도구였습니다. 신청서는 대장에 모으고, 작품 파일은 제출자별 폴더에 정리한 뒤 한 화면에서 찾아볼 수 있으면 좋겠다고 생각했습니다.
그래서 AI와 대화하면서 구글폼·시트·드라이브를 연결하고, 접수 현황을 확인하는 웹 화면을 만들었습니다. 응답이 들어온 뒤 대장과 폴더로 정리하고, 담당자는 화면에서 검색하거나 제출 자료를 확인하는 방식입니다.
아래는 실제 신청자 정보 대신 가상 신청서로 실행한 모습입니다. 폴더 구조도 같은 정리 코드를 가상 환경에서 실행한 결과입니다.

직접 만든 접수 관리 화면입니다.
1. 폴더 구조 정리하기
이 도구의 이전 버전도 제출자별 폴더를 만들었습니다. 폴더 이름에 이름과 작품명, 접수번호가 함께 들어 있었고요. 다만 접수 순서대로 번호를 매기고 부문별로 나눠 보고 싶었습니다. 파일 이름에 붙은 원본 ID도 짧게 정리하고 싶었고요.
그래서 접수시각 순서대로 연번을 붙이고 참가자 구분과 응모 부문 아래에 폴더를 두도록 바꿨습니다. 제출자 폴더는 연번_이름_작품명으로 만들었습니다.

정리 코드를 실행해 얻은 폴더 목록입니다. 정리 전후 구조를 나란히 놓았습니다.
예시에서는 먼저 접수한 자료가 001_가상 신청자_가상 작품이 됩니다. 그 안에 프롬프트 자료와 결과물을 나눠 둡니다. 나중에 받은 자료는 다음 연번이고요.
파일명에서 긴 ID를 없애면 보기에는 편합니다. 다만 이름이 같다고 같은 파일은 아니잖아요. 서로 다른 파일이 같은 이름이면 (2)를 붙이고, 원본 파일의 ID는 사본의 설명에 남기도록 했습니다. 이렇게 하면 파일 이름을 줄여도 원본을 찾을 수 있습니다.
2. 파일 중복 복사 막기
이런 작업은 한 번 실행하고 끝나면 좋겠지만, 중간에 파일 복사가 실패할 수도 있습니다. 이미 정리한 자료가 있는 상태에서 다시 실행할 때도 있고요.
파일 이름 대신 원본 파일의 ID로 복사 여부를 확인하게 했습니다. 작업이 멈춰 다시 실행해도 이미 복사한 파일은 건너뜁니다.

같은 작업을 두 번 실행한 결과입니다. 두 번째 실행 후에도 사본 수가 늘어나지 않았습니다.
3. 기존 접수 정보 보존하기
접수번호와 연번도 따로 뒀습니다. 접수번호는 기존 기록과 연결할 때 쓰고, 연번은 접수 순서대로 보기 위한 번호입니다. 폴더를 정리한다고 기존 접수번호나 폴더 링크까지 바꾸지는 않았습니다.
대장도 마찬가지입니다. 담당자가 이름이나 작품명을 직접 고쳐놨는데 자동화가 원래 응답으로 되돌려버리면 곤란하죠. 직접 정정한 값은 남겨두고, 정리 전에 백업과 변경 이력도 만들게 했습니다.
4. 접수 현황 확인 화면 만들기
폴더가 정리돼도 매번 하나씩 열어서 서류가 있는지 확인하기는 번거롭습니다. 그래서 접수 현황, 참가자명단, 확인할 항목을 나눠 볼 수 있는 화면도 만들었습니다.

제출자료가 빠진 예시를 골라본 화면입니다. 자동 점검은 담당자가 확인할 대상을 찾는 데 사용합니다.
목록에서 신청서를 누르면 제출한 내용과 자료 상태를 함께 볼 수 있습니다. 이름이나 작품명으로 검색하고 부문별로 좁혀볼 수도 있고요.

신청서 상세 화면입니다. 실제 운영대장과 관리 화면은 접근 권한을 제한했습니다.
자동 점검을 마친 뒤에도 담당자가 신청서와 파일 내용을 읽고 제출 조건에 맞는지 확인합니다. 판단하기 어려운 분류도 임의로 확정하지 않고 확인 대상으로 둡니다.
이 작업에는 Google Apps Script를 썼습니다. 구글폼·시트·드라이브를 코드로 연결하고 구글에서 실행할 수 있는 도구입니다. 별도의 접수 관리 웹 화면은 대장을 읽어 보여줍니다.
만들어둔 코드를 다른 설문에 그대로 붙이면 끝나는 건 아닙니다. 질문이 다르면 응답을 읽는 위치도 맞춰야 하고 파일과 대장에 접근할 권한도 확인해야 합니다. 처음에는 가상 신청서와 파일로 시험해보는 게 좋습니다.
지금은 이 도구로 실제 접수 자료를 정리하고 있습니다. 다음에 들어오는 접수가 대장과 폴더에 맞게 반영되는지도 계속 확인할 예정이고요.
따라 하기
- 이런 분께: 구글폼으로 신청과 첨부파일을 받아 손으로 정리하는 분
- 준비물: 구글폼 응답 시트, 첨부파일이 저장되는 구글 드라이브
- 제가 처음 AI에게 보낸 말 (경로·맞춤법만 다듬음)
“공모전 구글설문으로 받고 있잖아? 이거 총괄표로 신청팀명이랑 제출서류 누락 여부, 연락처 이런 거 자동 정리하고, 첨부파일들은 폴더에 자동으로 다운받아지게 만들려고 해. 어떻게 정리하면 돼?”
처음부터 완벽하게 설명할 필요는 없습니다. 하던 일과 불편한 점을 그대로 말하고, 나온 결과를 보면서 고쳐가면 됩니다.
점프!
작은 시도에서 시작하는 다음 점프.