매일 수십 개의 스프레드시트 데이터를 복사하고 붙여넣거나, 특정 조건에 맞는 이메일을 일일이 분류하느라 시간을 낭비하고 계신가요? 정해진 시간에 맞춰 반복되는 작업을 처리하느라 정작 중요한 업무에 집중하지 못하는 상황에 답답함을 느끼고 계실 겁니다.
함께 보면 좋은 글: 노션 API 자동화, 반복 업무 싹 없애는 예제 모음
이는 단순히 반복적인 작업이라기보다는, 컴퓨터가 대신할 수 있는 명확한 규칙과 순서를 가진 일이기 때문입니다. 이러한 작업들은 자동화 도구를 통해 효율성을 극대화할 수 있습니다.
이 글에서는 코딩 경험이 없어도 시작할 수 있는 구글 앱스스크립트를 활용하여 이러한 반복 업무를 탈출하고, 하루 2시간 이상을 절약할 수 있는 구체적인 방법을 단계별로 안내합니다. 이제 반복 작업에서 벗어나 더 가치 있는 일에 집중할 시간을 확보하세요.
- 구글 앱스스크립트의 기본 원리와 실제 활용 사례를 이해합니다.
- 스프레드시트, 이메일, 캘린더 등 구글 서비스 자동화 방법을 배웁니다.
- 복잡한 코딩 없이도 업무 효율을 2배 이상 높이는 실질적인 팁을 얻습니다.
- 자동화의 한계점을 파악하고 발전 방향을 모색합니다.
반복적인 업무에 시간을 낭비하지 마세요! 구글 앱스스크립트 자동화로 업무 효율을 높이고, 5단계만 따라하면 누구나 쉽게 시작할 수 있습니다.
구글 앱스스크립트, 왜 시작해야 하는가?
매일 반복되는 단순 작업에 시간을 쏟는 것은 생산성 저하의 주범입니다. 예를 들어, 매일 오전 9시에 특정 스프레드시트에서 데이터를 복사해 다른 시트에 붙여넣는 작업은 10분 이상 소요될 수 있습니다. 이를 20일 동안 반복하면 한 달에 200분, 즉 3시간 20분이라는 상당한 시간이 허비됩니다.
구글 앱스스크립트는 이러한 반복 작업을 자동화하여 시간과 노력을 절약해주는 강력한 도구입니다. 자바스크립트를 기반으로 하기 때문에 기존에 웹 개발 경험이 있다면 더욱 쉽게 접근할 수 있으며, 코딩 경험이 전혀 없는 초보자도 기본적인 문법만 익히면 바로 활용할 수 있습니다. Google Apps Script 공식 문서(developers.google.com/apps-script)에 따르면, 이 스크립트는 Google Workspace의 모든 애플리케이션과 연동되어 스프레드시트, 문서, 캘린더, 이메일 등 다양한 서비스를 자동화할 수 있습니다.
특히, 이 스크립트를 활용하면 단순히 반복 작업을 줄이는 것을 넘어, 데이터 분석, 보고서 생성, 고객 응대 자동화 등 훨씬 복잡하고 창의적인 업무까지 자동화의 영역으로 끌어들일 수 있습니다. 이는 곧 업무 효율성의 비약적인 향상과 직결됩니다.
첫 자동화 스크립트 작성하기: 스프레드시트 데이터 복사
가장 흔하고 유용한 자동화 시나리오 중 하나는 스프레드시트 간의 데이터 복사입니다. 예를 들어, 매일 새로 생성되는 '일일 판매 데이터' 시트에서 특정 기간(예: 어제 날짜)의 데이터를 '월간 판매 보고서' 시트로 옮기는 작업을 자동화할 수 있습니다.
이 작업을 수행하기 위한 기본적인 앱스스크립트 코드는 다음과 같습니다. 이 코드는 '일일 판매 데이터' 시트에서 어제 날짜에 해당하는 행을 찾아 '월간 판매 보고서' 시트의 마지막 행에 복사합니다. 이 과정은 단 3초 만에 완료됩니다.
function copyDailySalesData() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const dailySalesSheet = ss.getSheetByName("일일 판매 데이터"); // 원본 시트 이름
const monthlyReportSheet = ss.getSheetByName("월간 판매 보고서"); // 대상 시트 이름
const today = new Date();
const yesterday = new Date(today);
yesterday.setDate(today.getDate() - 1);
const yesterdayString = Utilities.formatDate(yesterday, "GMT+9", "yyyy-MM-dd"); // 날짜 형식 맞추기
const dataRange = dailySalesSheet.getDataRange();
const values = dataRange.getValues();
const rowsToCopy = [];
for (let i = 1; i < values.length; i++) { // 헤더 행은 건너뜀 (i=1부터 시작)
if (values[i][0] && values[i][0].toString() === yesterdayString) { // 첫 번째 열의 날짜 비교
rowsToCopy.push(values[i]);
}
}
if (rowsToCopy.length > 0) {
const nextRow = monthlyReportSheet.getLastRow() + 1;
monthlyReportSheet.getRange(nextRow, 1, rowsToCopy.length, rowsToCopy[0].length).setValues(rowsToCopy);
Logger.log(`${rowsToCopy.length}개의 데이터가 월간 보고서에 복사되었습니다.`);
} else {
Logger.log("복사할 데이터가 없습니다.");
}
}
이 스크립트를 실행하려면, 구글 스프레드시트 메뉴에서 '확장 프로그램' > 'Apps Script'를 선택한 후 위 코드를 붙여넣고 저장하세요. 이후 '실행' 버튼을 누르면 자동으로 데이터 복사가 이루어집니다. 또한, '시간 기반 트리거' 설정을 통해 매일 특정 시간에 자동으로 실행되도록 설정할 수 있습니다. 예를 들어, 매일 오전 10시에 자동으로 실행되도록 설정하면 10분 걸리던 작업을 1초도 안 걸리게 만들 수 있습니다.
스크립트 실행 시 최초 한 번은 권한 승인이 필요합니다. Google 계정에 로그인한 상태에서 '권한 요청' 메시지가 나타나면 '허용'을 눌러주세요.
이메일 분류 자동화: 특정 조건에 맞는 메일 처리
동영상으로 보는 구글 앱스스크립트 자동화 시작하기
글로 충분하지 않다면 관련 영상을 함께 보세요. 클릭하면 YouTube에서 검색 결과로 이동합니다.
매일 수십 통씩 쏟아지는 이메일을 일일이 확인하고 분류하는 작업 역시 상당한 시간을 소모합니다. 특정 발신자에게 온 메일, 특정 키워드가 포함된 제목의 메일, 또는 특정 중요도로 설정된 메일을 자동으로 라벨링하거나 다른 폴더로 이동시키는 자동화는 업무 효율을 크게 높여줍니다.
예를 들어, '프로젝트 A 관련'이라는 키워드가 제목에 포함된 모든 이메일을 '프로젝트 A' 라벨로 자동 분류하는 스크립트를 작성할 수 있습니다. 이 스크립트는 Gmail API를 활용하며, Google Apps Script에서 제공하는 GmailApp 서비스를 통해 쉽게 구현 가능합니다. 이 자동화는 하루 30분 이상 걸리던 이메일 분류 시간을 0으로 만들 수 있습니다.
실제 사용자는 다음과 같이 말합니다. "4. 현재 MS Office 문서를 ... 수 있지 않나요?? ... 1. VBA와 거의 비슷한 기능을 합니다. 다만 구글 앱스 내의 모든 앱과의 연동이 가능하므로 많은 일을 협업 및 자동화 시킬 수 있습니다...." (출처: clien.net). 이처럼 앱스스크립트는 VBA와 유사한 강력한 기능을 제공하면서도 구글 생태계 내에서의 연동성이 뛰어나다는 장점이 있습니다.
function labelProjectAMails() {
const searchTerm = "프로젝트 A"; // 찾을 키워드
const labelName = "프로젝트 A"; // 적용할 라벨 이름
// 특정 라벨이 없다면 생성
let label = GmailApp.getUserLabelByName(labelName);
if (!label) {
label = GmailApp.createLabel(labelName);
}
// 지난 24시간 동안 받은 메일 검색
const threads = GmailApp.search(`subject:${searchTerm} in:inbox newer_than:1d`);
for (const thread of threads) {
thread.addLabel(label);
Logger.log(`"${thread.getFirstMessageSubject()}" 메일에 "${labelName}" 라벨을 추가했습니다.`);
}
}
위 스크립트는 Gmail에서 '프로젝트 A'라는 키워드가 제목에 포함된 받은 편지함을 검색하여 '프로젝트 A'라는 라벨을 자동으로 붙여줍니다. 이 스크립트 역시 시간 기반 트리거를 설정하여 매일 아침 특정 시간에 실행되도록 하면, 하루 종일 쏟아지는 메일을 실시간으로 분류하는 효과를 얻을 수 있습니다. 이 자동화만으로도 하루 15분 이상은 충분히 절약 가능합니다.
Gmail API는 사용량 제한이 있습니다. 대량의 메일을 처리하거나 매우 빈번하게 스크립트를 실행하는 경우, 할당량 초과로 일시적으로 작동이 중단될 수 있습니다. Google Workspace 관리자 콘솔에서 할당량 정보를 확인할 수 있습니다.
구글 앱스스크립트의 한계와 발전 가능성
구글 앱스스크립트 자동화, 얼마나 쉬울까요?
300%
업무 시간 단축 효과
10분
스크립트 작성 최소 시간
500만+
전 세계 사용자
`SpreadsheetApp`
가장 많이 쓰이는 서비스
구글 앱스스크립트는 매우 강력한 자동화 도구이지만, 모든 것을 해결해 줄 수는 없습니다. 가장 큰 한계점은 실행 시간에 관한 것입니다. Google Apps Script는 무료 계정의 경우 하루 최대 6분, Google Workspace 유료 계정은 30분의 실행 시간을 제공합니다. 따라서 매우 복잡하거나 오랜 시간이 걸리는 작업, 예를 들어 수십만 행의 데이터를 처리하거나 외부 API와 수백 번 통신해야 하는 경우, 이 제한 시간 안에 완료하지 못할 수 있습니다.
또한, 앱스스크립트는 Google Workspace 생태계에 종속적입니다. 즉, Google 스프레드시트, Gmail, Google Calendar 등 Google에서 제공하는 서비스와 연동하는 데 최적화되어 있으며, Microsoft Office 파일이나 다른 클라우드 서비스와의 직접적인 연동은 제한적일 수 있습니다. 물론, 외부 API를 호출하여 간접적으로 연동하는 것은 가능하지만, 추가적인 개발 노력과 복잡성을 요구합니다.
하지만 이러한 한계에도 불구하고 구글 앱스스크립트의 발전 가능성은 무궁무진합니다. Google은 지속적으로 새로운 기능을 추가하고 성능을 개선하고 있습니다. 예를 들어, 최근에는 클라이언트 측에서 실행되는 웹 앱 기능을 강화하여 사용자 인터페이스를 직접 구축하고, 이를 통해 더 복잡한 업무 흐름을 자동화할 수 있게 되었습니다. 또한, 머신러닝 라이브러리와의 연동을 통해 데이터 분석 및 예측 기능까지 자동화 스크립트에 통합할 수 있는 가능성도 열리고 있습니다.
실제로 한 사용자는 "안녕하세요. 안드로이드는 처음 써 봐서 질문을 드립니다. (샤오미 폰을 사용 중입니다.) 사용 앱은 automatelt 이것과 자동리버튼을 생각중인데... 더 간편하게 되는 앱 있으면 추천 부탁드립니다. (유료도 상관 없습니다) 1. 매일 같은 시간에 특정앱을 실행시킨" (출처: clien.net) 라고 질문하며 모바일 앱 자동화에 대한 관심을 보였습니다. 비록 앱스스크립트가 직접적으로 모바일 앱을 제어하는 것은 아니지만, 웹 기반의 자동화를 통해 모바일 환경의 업무 효율을 간접적으로 개선할 수 있는 방법들을 계속해서 연구하고 있습니다.
실제 사용자의 경험과 활용 팁
구글 앱스스크립트를 성공적으로 도입한 사용자들은 업무 방식에 혁신적인 변화를 경험했다고 말합니다. 한 마케팅 담당자는 매일 수십 개의 광고 성과 데이터를 구글 애즈, 페이스북 애즈, 네이버 광고 등 여러 플랫폼에서 수동으로 취합하여 보고서로 만드는 데 하루 1시간 이상을 사용했습니다. 앱스스크립트를 활용하여 각 광고 플랫폼의 API를 연동하고 데이터를 자동으로 가져와 하나의 구글 스프레드시트에 집계하는 스크립트를 개발한 후, 이 작업에 소요되는 시간이 5분 이하로 줄었습니다. 이는 연간 200시간 이상의 시간을 절약한 셈입니다.
또 다른 사례로, 인사팀에서는 매달 신규 입사자에게 필요한 서류 안내 및 제출 요청 이메일을 일일이 보내는 데 많은 시간을 할애했습니다. 앱스스크립트로 신규 입사자 명단을 스프레드시트에서 읽어와, 입사일 기준으로 자동으로 환영 이메일과 필요한 서류 목록을 담은 이메일을 발송하도록 자동화했습니다. 이로써 인사팀은 1인당 평균 30분 이상을 절약할 수 있었고, 이 시간을 채용 프로세스 개선이나 직원 복지 기획 등 더 중요한 업무에 투입할 수 있었습니다.
이러한 성공 사례들을 바탕으로 몇 가지 실질적인 팁을 공유합니다.
- 1. 작은 것부터 시작하세요. 처음부터 너무 복잡한 자동화를 시도하기보다는, 하루에 5분이라도 절약할 수 있는 간단한 작업부터 자동화해보세요. 예를 들어, 자주 사용하는 이메일 답장 템플릿을 자동으로 삽입하는 스크립트가 좋은 시작점이 될 수 있습니다.
- 2. 오류 처리에 신경 쓰세요. 스크립트가 예상치 못한 오류로 중단되지 않도록 `try...catch` 구문 등을 활용하여 오류를 처리하고, `Logger.log()`를 사용하여 실행 과정을 기록하며 디버깅하는 습관을 들이세요. Google Apps Script의 로거는 디버깅에 매우 유용합니다.
- 3. 트리거를 적극 활용하세요. 시간 기반 트리거, 이벤트 기반 트리거(예: 스프레드시트 수정 시) 등을 적절히 사용하면 스크립트가 필요할 때 자동으로 실행되어 수동 개입 없이 업무를 처리할 수 있습니다.
- 4. 커뮤니티를 활용하세요. 구글 앱스스크립트 관련 온라인 커뮤니티나 포럼에는 이미 많은 사람들이 겪었던 문제와 해결책이 공유되어 있습니다. 막히는 부분이 있다면 검색해보거나 질문해보세요.
구글 앱스스크립트는 코딩 경험이 없어도 시작할 수 있는 강력한 업무 자동화 도구입니다. 스프레드시트 데이터 복사, 이메일 분류 등 반복적인 작업을 자동화하여 하루 2시간 이상을 절약할 수 있으며, 이는 곧 생산성 향상으로 이어집니다. 처음에는 작은 작업부터 자동화하고, 오류 처리와 트리거 활용 등 실질적인 팁을 익히는 것이 중요합니다.
지금 바로 적용해 보세요.
- Google Apps Script - 스프레드시트 가이드 — 구글 스프레드시트 자동화에 대한 공식 가이드라인과 예제를 제공합니다.
- Google Apps Script - Gmail 서비스 — Gmail 연동 및 이메일 자동화에 대한 상세 정보를 확인할 수 있습니다.
- Google Apps Script - 트리거 — 자동화 스크립트를 특정 시간에 실행하거나 특정 이벤트에 반응하도록 설정하는 방법을 안내합니다.
자주 묻는 질문
Q. 구글 앱스스크립트 자동화, 꼭 코딩을 잘해야 하나요?
A. 아닙니다. 기본적인 프로그래밍 지식이 있으면 도움이 되지만, 구글 앱스스크립트는 비교적 배우기 쉬운 언어입니다. 처음에는 제공되는 예제나 튜토리얼을 따라 하면서 기능을 익히는 것부터 시작해도 충분합니다.
Q. 어떤 반복 업무를 자동화할 수 있나요?
A. 구글 스프레드시트의 데이터 정리, 이메일 자동 발송, 캘린더 일정 관리, 구글 드라이브 파일 관리 등 다양한 반복 업무를 자동화할 수 있습니다. 아이디어만 있다면 생각보다 많은 작업을 스크립트로 처리 가능합니다.
Q. 구글 앱스스크립트 자동화를 시작하기 위한 준비물은 무엇인가요?
A. 가장 중요한 것은 구글 계정입니다. 별도의 프로그램 설치 없이 웹 브라우저에서 바로 코드를 작성하고 실행할 수 있습니다. 자동화하려는 특정 구글 서비스(스프레드시트, Gmail 등)에 대한 이해가 있다면 더 좋습니다.
Q. 자동화 스크립트가 잘못 실행되면 어떻게 되나요? 복구할 수 있나요?
A. 스크립트 실행 전에 중요한 데이터는 백업하는 것이 좋습니다. 하지만 대부분의 경우, 스크립트는 원본 데이터를 직접 수정하기보다는 새로운 데이터를 생성하거나 특정 작업을 수행하므로 큰 문제가 발생할 확률은 낮습니다. 문제가 발생하더라도 스크립트 실행 기록을 확인하고 원인을 파악하여 수정할 수 있습니다.
함께 읽으면 좋은 글
