매번 같은 작업, 손으로 하고 있진 않나요?
구글 스프레드시트를 쓰다 보면 비슷한 패턴이 반복됩니다. 다른 시트에서 데이터를 가져오고, 조건에 맞는 값을 골라내고, 날짜를 기준으로 정렬하고. 이걸 매번 수동으로 하면 시간도 걸리고 실수도 생기기 마련입니다.
구글 스프레드시트 자동화 함수란, 이런 반복 작업을 수식 하나로 처리할 수 있게 해주는 내장 기능들을 말합니다. 엑셀과 공유하는 함수도 있고, 구글 스프레드시트에서만 쓸 수 있는 고유 함수도 있습니다. 별도 프로그램 설치 없이 셀에 수식만 입력하면 되니까 진입 장벽이 낮은 편이죠.
이 글에서는 실무에서 자주 쓰이는 자동화 함수들을 기능별로 나눠서 정리합니다. 각 함수가 어떤 상황에 유용한지, 어떤 구조로 작성하는지에 초점을 맞췄습니다.
데이터 자동 참조: VLOOKUP, XLOOKUP, IMPORTRANGE
자동화의 출발점은 ‘다른 곳에 있는 데이터를 자동으로 가져오는 것’입니다. 대표적인 함수 세 가지를 비교해 보겠습니다.
| 함수 | 주요 용도 | 특징 |
|---|---|---|
| VLOOKUP | 특정 키 값으로 같은 시트나 범위에서 대응값 검색 | 왼쪽→오른쪽 방향만 검색 가능. 가장 널리 알려진 참조 함수 |
| XLOOKUP | VLOOKUP과 비슷하지만 방향 제한 없음 | 검색 범위와 반환 범위를 따로 지정. 에러 시 기본값 설정 가능 |
| IMPORTRANGE | 다른 스프레드시트 파일에서 데이터 가져오기 | 구글 스프레드시트 고유 함수. URL과 범위를 지정하면 실시간 연동 |
VLOOKUP은 가장 기본적인 참조 함수입니다. 예를 들어 상품 코드를 입력하면 상품명이 자동으로 채워지는 식이죠. 다만 검색 기준 열이 범위의 첫 번째 열이어야 한다는 제약이 있습니다.
XLOOKUP은 이 제약을 없앤 함수입니다. 구글 스프레드시트에서도 지원되며, 값을 찾지 못했을 때 보여줄 기본값을 세 번째 인수로 지정할 수 있어서 에러 처리가 깔끔해집니다.
IMPORTRANGE는 조금 성격이 다릅니다. 아예 다른 파일의 데이터를 끌어오는 함수라서, 부서별로 시트를 나눠 관리하면서 하나의 통합 대시보드를 만들 때 유용합니다. 처음 사용할 때 접근 권한 승인이 필요하다는 점만 기억하면 됩니다.
조건부 자동 처리: IF, IFS, FILTER, QUERY
데이터를 가져왔으면 다음 단계는 조건에 따라 자동으로 분류하거나 걸러내는 겁니다.
IF는 가장 기본적인 조건 함수입니다. ‘매출이 100만 원 이상이면 달성, 아니면 미달성’처럼 두 갈래로 나눌 때 씁니다. 조건이 여러 개면 IF를 중첩하게 되는데, 3단계만 넘어가도 수식이 복잡해지죠. 이럴 때 IFS 함수를 쓰면 조건을 나열하듯 작성할 수 있어서 훨씬 읽기 편합니다.
좀 더 강력한 건 FILTER와 QUERY입니다.
FILTER 함수는 원본 데이터에서 조건에 맞는 행만 자동으로 추출합니다. 예를 들어 ‘서울 지역 주문만 보기’ 같은 필터를 수식 하나로 걸 수 있습니다. 원본이 바뀌면 결과도 자동 갱신되니까 수동 필터보다 관리가 쉽습니다.
QUERY 함수는 구글 스프레드시트의 숨은 무기라고 할 만합니다. SQL(데이터베이스 질의 언어)과 비슷한 문법으로 데이터를 조회합니다. SELECT, WHERE, ORDER BY, GROUP BY 같은 키워드를 조합하면 피벗 테이블 수준의 집계를 수식 한 줄로 처리할 수 있습니다.
QUERY 사용 예시 구조:
- =QUERY(데이터범위, “SELECT A, SUM(C) WHERE B=’서울’ GROUP BY A ORDER BY SUM(C) DESC”)
- 큰따옴표 안에 쿼리 문법을 넣고, 텍스트 조건은 작은따옴표로 감싸는 게 포인트
처음에는 문법이 낯설 수 있지만, 한번 익히면 복잡한 데이터 정리가 눈에 띄게 빨라집니다.
반복 입력을 줄이는 함수: ARRAYFORMULA, UNIQUE, SEQUENCE
셀 하나에 수식을 넣고 아래로 쭉 드래그하는 작업. 데이터가 수백 행이면 꽤 번거롭습니다. ARRAYFORMULA(배열 수식)는 이 문제를 해결합니다.
ARRAYFORMULA를 쓰면 하나의 수식이 전체 범위에 자동 적용됩니다. 예를 들어 B열 전체에 A열 값의 두 배를 넣고 싶다면, B1 셀에 =ARRAYFORMULA(A1:A*2)라고 한 번만 입력하면 됩니다. 새로운 행이 추가돼도 자동으로 계산됩니다.
UNIQUE 함수는 중복을 제거한 고유 값 목록을 자동 생성합니다. 거래처 이름이 수백 건 반복되는 시트에서 거래처 리스트만 따로 뽑을 때 편리하죠.
SEQUENCE는 연속 번호를 자동 생성합니다. =SEQUENCE(100)이면 1부터 100까지, =SEQUENCE(10, 1, 0, 5)면 0부터 5 간격으로 10개. 단순하지만 다른 함수와 조합하면 자동화 시트의 뼈대를 만들 때 유용합니다.
자동화 함수 사용 시 흔한 실수와 주의점
함수를 많이 쓴다고 무조건 좋은 건 아닙니다. 몇 가지 주의할 점이 있습니다.
- IMPORTRANGE 과다 사용: 외부 시트 참조를 너무 많이 걸면 로딩 속도가 눈에 띄게 느려집니다. 꼭 필요한 범위만 최소한으로 가져오는 게 좋습니다.
- QUERY 함수의 열 참조 방식: QUERY 안에서는 열을 A, B, C 같은 알파벳으로 지정하는데, 데이터 범위가 A열부터 시작하지 않으면 Col1, Col2 같은 번호 방식으로 바뀝니다. 이걸 모르면 에러가 자주 납니다.
- ARRAYFORMULA와 빈 셀 처리: 범위 전체에 적용되다 보니 빈 행에도 수식이 먹히면서 불필요한 결과가 표시될 수 있습니다. IF와 조합해서 빈 셀일 때는 빈 값을 반환하도록 처리하는 게 일반적입니다.
또 하나, 구글 스프레드시트는 셀 수 제한이 있습니다. 시트당 최대 1,000만 셀까지인데, 함수가 자동으로 확장되는 구조라면 불필요하게 범위를 크게 잡지 않도록 신경 써야 합니다.
함수 너머의 자동화: Apps Script과 연동 가능성
함수만으로 해결이 안 되는 자동화도 있습니다. 매일 정해진 시간에 데이터를 갱신한다거나, 특정 조건이 충족되면 이메일을 보내는 식의 작업이죠.
이런 경우 구글 Apps Script(구글 스프레드시트에 내장된 자바스크립트 기반 스크립팅 환경)를 활용할 수 있습니다. 메뉴에서 ‘확장 프로그램 > Apps Script’로 진입하면 코드 에디터가 열립니다. 프로그래밍 경험이 조금이라도 있다면 매크로 수준의 자동화를 직접 만들 수 있고, 경험이 없더라도 간단한 예제 코드를 검색해서 붙여넣기만 해도 기본적인 자동화는 구현 가능합니다.
다만 Apps Script는 이 글의 범위를 넘어서는 주제라서, 여기서는 ‘함수로 안 되는 건 스크립트라는 선택지가 있다’ 정도만 알아두시면 충분합니다.
자주 묻는 질문 (FAQ)
Q: VLOOKUP과 XLOOKUP 중 어떤 걸 쓰는 게 좋나요?
A: 새로 배우는 거라면 XLOOKUP을 추천합니다. 방향 제한이 없고 에러 처리가 간편합니다. 다만 기존에 VLOOKUP으로 만든 시트가 잘 작동하고 있다면 굳이 바꿀 필요는 없습니다.
Q: QUERY 함수를 배우려면 SQL을 먼저 공부해야 하나요?
A: 전체 SQL을 알 필요는 없습니다. SELECT, WHERE, GROUP BY, ORDER BY 네 가지 키워드만 이해하면 대부분의 QUERY 활용이 가능합니다.
Q: ARRAYFORMULA를 쓰면 시트가 느려지나요?
A: 적용 범위가 수만 행 이상이고 복잡한 함수와 중첩되면 체감될 수 있습니다. 범위를 필요한 만큼만 지정하고, 계산이 무거운 함수와의 중첩은 최소화하는 게 좋습니다.
Q: 구글 스프레드시트 자동화 함수는 엑셀에서도 동일하게 작동하나요?
A: VLOOKUP, XLOOKUP, IF 같은 함수는 엑셀에서도 작동합니다. 하지만 IMPORTRANGE, QUERY, GOOGLEFINANCE 같은 함수는 구글 스프레드시트 전용이라 엑셀에서는 사용할 수 없습니다.
Q: 함수 없이 자동화하는 방법도 있나요?
A: 구글 스프레드시트의 ‘매크로 기록’ 기능을 쓰면 마우스 클릭과 키 입력을 녹화해서 반복 실행할 수 있습니다. 코드를 몰라도 가능하지만 복잡한 조건 분기에는 한계가 있습니다.
이 글은 일반적인 정보 제공 목적이며, 실제 제품의 사양·가격·기능은 시점에 따라 달라질 수 있습니다. 구매 결정 전 공식 정보를 확인하시기 바랍니다.
※ 작성일: 2026년 08월 31일 기준