엑셀자동화

구글 워크스페이스의 Gemini와 Apps Script를 사용하여 반복 업무를 줄여보자!

Google Apps Script, AI와 함께라면 코딩 초보도 업무 자동화 전문가! 구글 시트, Gmail 자동화 예제부터 API 연동, 오류 수정 꿀팁까지 지금 바로 확인해보세요.


구글 워크스페이스의 Gemini와 Apps Script를 사용하여 반복 업무를 줄여보자!

안녕하세요. 많은 분들이 일상적으로 Google Workspace(구글 워크스페이스)를 사용하고 계실 텐데요, Gmail, Sheets, Docs, Drive 등의 기본 기능 외에, 그 안에 숨겨진 강력한 자동화 도구인 'Apps Script(앱 스크립트)'에 대해서는 아직 생소하게 느끼시는 분들도 많으실 겁니다.

저 또한 다양한 솔루션을 검토하고 도입하는 과정에서 이 Apps Script의 잠재력을 발견하고 실제 업무에 적용해보면서, 단순 반복 업무를 줄이고 보다 가치 있는 일에 집중할 수 있는 환경을 만드는 데 큰 도움을 받았습니다. 구글 워크스페이스라는 잘 갖춰진 도구상자에, 필요에 따라 맞춤 제작한 '자동화 공구'를 추가하는 것과 비슷하다고 생각하시면 이해가 쉬울 것 같습니다.

그래서 오늘은 제가 실무에서 경험하며 유용하다고 생각했던 Apps Script의 기본 개념부터 실제 사용법, 그리고 "이런 자동화까지 가능했어?" 싶은 활용 예시와 몇 가지 팁을 공유해 드리고자 합니다. 이 글을 통해 여러분의 구글 워크스페이스 활용 수준을 한 단계 높이고, 업무 자동화의 첫걸음을 내딛는 데 도움이 되기를 바랍니다.

1. Google Apps Script란 무엇인가? 핵심 개념 이해하기

우선 Apps Script가 정확히 무엇인지부터 짚고 넘어가겠습니다. 이름에서 '스크립트'라는 단어 때문에 다소 기술적으로 느껴지실 수 있지만, 그 기본 개념은 생각보다 간단합니다.

Apps Script는 우리가 일상적으로 사용하는 구글 워크스페이스 도구들(Gmail, Sheets, Docs, Calendar 등)이 서로 유기적으로 작동하며, 반복적인 수작업들을 알아서 처리하도록 '자동화 규칙'을 설정할 수 있게 해주는 기능입니다. 마치 우리가 특정 업무 프로세스를 한 번 잘 정리해서 매뉴얼로 만들어두면, 그 다음부터는 그 매뉴얼대로 일이 진행되는 것과 유사하죠. Apps Script는 그 '매뉴얼'을 구글 시스템이 이해할 수 있는 방식(스크립트 코드)으로 작성하여, 구글 도구들이 스스로 일을 처리하게 만드는 것입니다.

예를 들어, 다음과 같은 일들을 Apps Script를 통해 자동화할 수 있습니다.

  • 매일 아침, 특정 구글 시트에 정리된 오늘의 주요 업무 목록을 자동으로 이메일로 받아보기.
  • 구글 설문지에 새로운 응답이 제출될 때마다, 해당 내용을 즉시 담당자에게 알림으로 보내기.
  • 구글 시트에서 특정 조건(예: 마감일 임박)을 만족하는 항목이 생기면, 해당 행의 서식을 자동으로 변경하여 시각적으로 강조하기.

이러한 작업들을 이전에는 우리가 직접 기억하고 수동으로 처리해야 했다면, Apps Script를 이용해 한 번만 규칙을 설정해두면 그 이후에는 자동으로 실행되도록 만들 수 있는 것입니다. 여기서 중요한 점은, 이 '자동화 규칙(스크립트 코드)'을 작성하는 것이 과거에는 프로그래밍 지식이 어느 정도 필요했지만, 최근에는 Gemini와 같은 생성형 AI의 도움을 받으면 코딩 경험이 부족한 분들도 기본적인 틀을 쉽게 만들 수 있게 되었다는 점입니다.

Apps Script를 활용했을 때 얻을 수 있는 주요 이점은 다음과 같습니다:

  • 별도의 프로그램 설치 불필요: Apps Script는 클라우드 기반으로 작동하기 때문에, 별도의 소프트웨어를 설치하거나 복잡한 개발 환경을 구축할 필요 없이 웹 브라우저만 있으면 바로 사용할 수 있습니다.
  • Google Workspace 서비스와의 뛰어난 연동성: Gmail, Sheets, Docs, Calendar 등 모든 Google Workspace 서비스와 긴밀하게 연동되어, 서비스 간 데이터 이동이나 기능 조합이 매우 자유롭습니다.
  • 다양한 수준의 자동화 구현 가능: 개인의 소소한 반복 업무 자동화부터, 팀 전체의 업무 효율을 높이는 복잡한 프로세스 자동화까지 다양한 수준의 요구사항을 만족시킬 수 있습니다.
  • 비용 효율적인 솔루션: 기본적인 사용은 대부분 무료로 제공되며, 일반적인 업무 자동화 수준에서는 추가 비용 없이도 충분히 그 효과를 누릴 수 있습니다.

결국 Apps Script는 구글 워크스페이스를 사용하는 우리가 반복적인 업무에서 벗어나 좀 더 본질적이고 창의적인 일에 집중할 수 있도록 지원하는 강력한 '업무 자동화 조력자'라고 할 수 있습니다.

2. Apps Script 시작하기: 자동화의 문을 여는 방법

그럼, Apps Script를 어떻게 시작할 수 있을까요? 가장 일반적인 방법은 Google Sheets와 같은 문서 내에서 직접 스크립트 편집기를 여는 것입니다.

  1. Google Sheets 파일을 하나 엽니다. (Docs, Slides, Forms 등에서도 유사한 방법으로 접근 가능합니다.)
  2. 상단 메뉴에서 Extensions(확장 프로그램) > Apps Script를 차례대로 클릭합니다.

그러면 새로운 브라우저 탭이나 창에 스크립트 편집기(Script Editor)가 나타날 것입니다. 이곳이 바로 우리가 Apps Script 코드를 작성하고 관리하는 작업 공간입니다. 처음에는 다소 생소해 보일 수 있지만, 기본적인 구조는 간단합니다. 코드를 입력하는 부분, 저장하고 실행하는 버튼, 그리고 스크립트가 제대로 작동하는지 확인하는 로그(기록) 기능 등이 있죠.

Google Apps Script

앞서 언급했듯이, 코딩 경험이 많지 않더라도 너무 걱정하실 필요는 없습니다. Gemini와 같은 생성형 AI 도구에게 "나는 구글 시트에서 이러이러한 작업을 자동으로 하고 싶은데, 이걸 위한 Apps Script 코드를 만들어 줄 수 있을까?"라고 구체적으로 질문하면, 기본적인 코드 구조나 아이디어를 얻는 데 큰 도움을 받을 수 있습니다. 물론, AI가 제공하는 코드가 항상 완벽한 것은 아니므로, 약간의 이해와 테스트는 필요하지만, 분명 시작의 부담을 크게 낮춰줄 것입니다.

3. 실무 효율 UP! AI와 함께하는 Apps Script 핵심 활용 예제

이제 Apps Script를 활용하여 실제 업무 효율을 높일 수 있는 구체적인 예제들을 살펴보겠습니다. 각 예제는 해결하고자 하는 문제 상황, Apps Script를 활용한 아이디어, 그리고 AI(예: Gemini)에게 코드 생성을 요청할 때 활용할 수 있는 질문 예시를 포함하고 있습니다.

  • 예제 1: 특정 조건 충족 시 자동으로 감사 이메일 발송하기 📧
    • 이런 상황에 유용해요: "웨비나 또는 이벤트 참석자 명단을 구글 시트로 관리하고 있습니다. J열에 '참석'이라고 표시된 분들에게 행사 종료 후 감사 이메일을 자동으로 보내고 싶은데, 일일이 수동으로 보내기는 번거롭고 누락될까 걱정됩니다."
    • Apps Script 활용 아이디어: 구글 시트의 J열 데이터가 '참석'으로 변경되거나 입력될 때를 감지하여, 해당 행의 C열에 있는 이메일 주소로 미리 준비된 감사 메시지를 자동으로 발송하도록 스크립트를 구성합니다. 'onEdit' 트리거를 활용하면 실시간으로 반응하게 만들 수 있습니다.
    • AI 코드 생성 요청 예시 (Gemini 등):
      "Gemini, 구글 시트에서 'J열'의 값이 '참석'으로 변경되면, 같은 행 'C열'에 있는 이메일 주소로 '참석해주셔서 감사합니다. [행사명] 담당자 드림.'이라는 내용의 이메일을 자동으로 발송하는 Apps Script 코드를 작성해줘."
    • 기대 효과: 시기적절한 감사 인사를 통해 고객 경험을 높이고, 수동 발송으로 인한 시간 소모 및 실수를 줄일 수 있습니다.
  • 예제 2: 특정 날짜 도래 시 알림 또는 작업 자동 실행하기 🗓️
    • 이런 상황에 유용해요: "구글 시트에 계약 만료일, 프로젝트 마감일, 정기 보고일 등을 기록해두고 있습니다. 이 날짜들이 다가오기 전에 미리 알림을 받거나, 특정 작업(예: 상태 업데이트)이 자동으로 실행되었으면 좋겠습니다."
    • Apps Script 활용 아이디어: 매일 특정 시간에 스크립트가 실행되도록 시간 기반 트리거(Time-driven trigger)를 설정합니다. 스크립트는 시트 내의 날짜 열을 확인하여, 오늘 날짜 또는 설정된 조건(예: 마감일 3일 전)에 해당하는 항목이 있으면 담당자에게 알림 이메일을 보내거나, 해당 항목의 '상태' 열을 '확인 필요' 등으로 자동 변경합니다.
    • AI 코드 생성 요청 예시 (Gemini 등):
      "Gemini, 구글 시트의 'E열'에 기록된 날짜가 오늘로부터 3일 후인 경우, 해당 행의 'A열'(작업명)과 'B열'(담당자 이메일) 정보를 가져와 담당자에게 '[작업명] 마감 3일 전입니다.'라는 제목으로 알림 이메일을 보내는 Apps Script 코드를 만들어줘. 이 스크립트는 매일 아침 9시에 실행되도록 하고 싶어."
    • 기대 효과: 중요한 마감일이나 일정을 놓치지 않도록 체계적으로 관리할 수 있으며, 반복적인 알림 설정 업무를 줄일 수 있습니다.
  • 예제 3: (고급) 외부 프로그램(협업툴 플로우)과 API 연동하여 업무 자동화하기 🔗
    • 이런 상황에 유용해요: "구글 시트에서 특정 조건이 충족된 고객 정보나 업무 데이터를 바탕으로, 우리가 사용하는 협업툴 플로우의 특정 프로젝트에 새로운 업무 게시글을 자동으로 생성하고 싶습니다. 데이터를 복사/붙여넣기 하는 과정이 번거롭습니다."
    • Apps Script 활용 아이디어 (고급 기능 안내): 이 경우는 Apps Script의 URL Fetch Service를 사용하여 플로우(또는 다른 웹 서비스)에서 제공하는 API(Application Programming Interface)를 호출하는 방식입니다. 해당 프로그램 API에 대한 약간의 이해(예: 어떤 주소로 어떤 정보를 보내야 하는지 등)가 필요하지만, 기본적인 요청-응답 구조만 파악한다면 충분히 구현 가능합니다. 주의: API 연동은 데이터 보안 및 해당 서비스의 이용 약관을 충분히 확인하고 진행해야 합니다.
    • AI 코드 생성 요청 예시 (Gemini 등):
      "Gemini, 구글 시트의 'A시트'에서 'F열'의 값이 '업무 생성'으로 변경되면, 해당 행의 'B열'(업무 제목), 'C열'(업무 내용), 'D열'(마감일) 데이터를 가져와서, '플로우(Flow)' API를 이용해 특정 프로젝트 ID(예: 'PROJECT_123')에 업무 게시글을 생성하는 Apps Script 코드를 작성해줘. 플로우 API 인증 방식은 API Key를 사용한다고 가정해줘." (실제로는 플로우 API 문서를 참조하여 더 정확한 요청 필요)
    • 기대 효과: 서로 다른 시스템 간의 데이터 연동을 자동화하여 업무 효율성을 극대화하고, 데이터 입력 오류를 줄이며, 보다 매끄러운 워크플로우를 구축할 수 있습니다.

app script log

API 연동과 같은 고급 기능은 처음에는 다소 복잡하게 느껴질 수 있지만, Gemini와 같은 AI에게 "플로우 API 문서를 참고해서 이런 기능을 하는 Apps Script 코드를 만들고 싶은데, 기본적인 요청 구조를 짜줄 수 있을까?" 와 같이 단계별로 도움을 받으면 충분히 도전해볼 수 있습니다.

4. Apps Script 활용 시 고려해야 할 몇 가지 사항 (feat. 오류 핸들링)

Apps Script는 매우 유용한 도구이지만, 효과적이고 안전하게 사용하기 위해 몇 가지 고려할 점이 있습니다. 특히 AI가 생성한 코드는 훌륭한 출발점이지만, 처음부터 완벽하게 작동하지 않는 경우가 대부분이라는 점을 인지하는 것이 중요합니다.

  • 스크립트 권한 부여의 이해: Apps Script가 사용자의 Gmail, Drive, Sheets 등 다른 구글 서비스의 데이터에 접근하거나 수정하려면 사용자의 명시적인 '권한 허용'이 필요합니다. 스크립트를 처음 실행할 때 어떤 권한을 요청하는지 확인하고, 신뢰할 수 있는 스크립트에만 필요한 권한을 부여하는 것이 중요합니다. 이는 우리가 스마트폰 앱을 설치할 때 '사진 접근 허용', '위치 정보 접근 허용' 등을 선택하는 것과 유사한 과정이라고 이해하시면 됩니다.
  • 구글 서비스 할당량(Quotas) 인지: Google은 서비스의 안정적인 운영을 위해 계정별로 Apps Script를 통해 실행할 수 있는 작업의 양(예: 하루에 보낼 수 있는 이메일 수, 스크립트 총 실행 시간 등)에 제한을 두고 있습니다. 대부분의 일반적인 업무 자동화 스크립트는 이 제한 범위 내에서 충분히 작동하지만, 매우 많은 양의 데이터를 처리하거나 아주 빈번하게 실행되는 스크립트의 경우에는 이러한 할당량을 인지하고 설계에 반영할 필요가 있습니다.
  • 오류 처리 및 디버깅의 중요성 (AI 코드도 점검 필수!):

    AI가 생성한 코드는 훌륭한 시작점이 될 수 있지만, 항상 완벽하지는 않습니다. 문법 오류, 잘못된 셀 참조, 로직의 허점 등 다양한 이유로 스크립트가 예상대로 작동하지 않을 수 있습니다. 이럴 때 당황하지 않고 문제를 해결하는 몇 가지 방법을 알아두는 것이 좋습니다.

    • 실행 로그(Execution log) 확인: Apps Script 편집기 내 '실행 로그'는 스크립트가 실행되면서 어떤 과정을 거쳤는지, 어디서 문제가 발생했는지 알려주는 중요한 단서입니다. Logger.log("현재 변수 값: " + myVariable); 와 같이 코드 중간중간에 변수 값이나 특정 지점 통과 여부를 출력하도록 하여 로그를 통해 흐름을 추적할 수 있습니다. 마치 스크립트가 지나가는 길목마다 표지판을 세워두는 것과 같죠.
    • 오류 메시지 꼼꼼히 읽기: 스크립트 실행 중 오류가 발생하면 편집기에 오류 메시지가 나타납니다. 이 메시지를 자세히 읽어보면 어떤 부분에서 문제가 발생했는지 힌트를 얻을 수 있습니다. 이해가 어렵다면, 오류 메시지 전체를 복사해서 Gemini와 같은 AI에게 "Apps Script에서 이런 오류 메시지가 나왔는데, 무슨 뜻이고 어떻게 해결해야 할까?"라고 질문해보세요. 명쾌한 답변을 얻는 경우가 많습니다.
    • 단계별 테스트 및 작은 단위로 수정: 긴 스크립트 전체를 한 번에 테스트하기보다, 작은 기능 단위로 나누어 각 부분이 제대로 작동하는지 확인하고 다음 단계로 넘어가는 것이 좋습니다. AI가 생성한 코드도 한 번에 다 적용하기보다는, 주요 기능별로 나눠서 테스트하고, 문제가 발생하면 해당 부분만 다시 AI에게 수정을 요청하는 방식으로 접근하는 것이 효율적입니다.
    • try...catch 활용: 예기치 않은 오류로 스크립트 전체가 멈추는 것을 방지하기 위해, 오류 발생 가능성이 있는 코드 블록을 try...catch 문으로 감싸서 오류가 발생하더라도 이를 감지하고 적절히 대응(예: 오류 내용 기록, 담당자에게 알림)하도록 할 수 있습니다. 이 역시 AI에게 "이 부분에 오류 처리 로직을 추가해줘"라고 요청할 수 있습니다.
  • 점진적인 시작과 AI의 적극 활용: 처음부터 너무 복잡하고 방대한 자동화를 구현하려고 하기보다는, 작고 단순하지만 효과가 확실한 작업부터 시작하여 점차적으로 기능을 확장하고 개선해 나가는 것이 바람직합니다. 그리고 앞서 계속 강조했듯이, 코드 작성에 어려움을 느끼거나 아이디어를 구체화하는 데 도움이 필요할 때는 주저하지 말고 Gemini와 같은 AI 도구에 구체적인 요구사항을 설명하고 도움을 받는 것을 적극적으로 활용하시기를 권장합니다.

결론: 반복 업무는 Apps Script와 AI에게, 우리는 더 가치 있는 일에 집중합시다

오늘은 Google Workspace의 강력한 자동화 도구인 Apps Script에 대해 함께 알아보았습니다. 이제 Apps Script가 단순히 개발자들만의 영역이 아니며, 코딩 경험이 부족하더라도 AI의 도움을 받아 충분히 접근하고 활용할 수 있다는 점을 이해하셨기를 바랍니다.

일상적인 구글 워크스페이스 작업 중 "아, 이 부분은 정말 자동으로 처리되었으면 좋겠다"라고 생각되는 부분이 분명 있을 것입니다. 그것이 아무리 사소해 보이더라도, Apps Script와 AI를 통해 자동화할 수 있는 가능성은 열려 있습니다. 오늘 당장, 가장 개선하고 싶은 반복 작업 하나를 정해서 Gemini와 같은 AI에게 "이런 기능을 하는 Apps Script 코드가 필요해"라고 한번 요청해보시는 것은 어떨까요?

작은 자동화의 시작이 여러분의 소중한 시간을 절약해주고, 반복적인 업무에서 오는 스트레스를 줄여줄 것입니다. 그렇게 확보된 시간과 에너지로 우리는 보다 창의적이고 전략적인, 진정으로 가치 있는 일에 집중할 수 있게 될 것입니다. 여러분의 스마트한 업무 환경 구축과 성공적인 DX 여정을 응원합니다!

Config_Contents_Banner

 

블로그를 구독하세요!

함께 보면 좋은 글