사무직 직장인이라면, 복붙 대신 이 조합부터 익혀야 합니다
나는 예전에는 엑셀에서 필터 걸고, 피벗 돌리고, VLOOKUP 붙이고,
안 맞으면 다시 범위 수정하고,
그러다가 퇴근 시간이 지나버리는 일을 자주 했다.
그런데 구글 스프레드시트에서는
이 과정을 훨씬 짧게 줄여주는 조합이 있다.
바로 IMPORTRANGE + QUERY다.
쉽게 말하면 이렇다.
- IMPORTRANGE는 다른 파일의 데이터를 가져오는 기사님
- QUERY는 가져온 데이터를 내가 원하는 조건대로 정리해 주는 실무 대리
즉,
“여러 파일에 흩어진 데이터를 한 번에 불러와서, 필요한 조건만 걸러 보고서처럼 정리하는 것”
이 가능해진다.
사무직 실무에서 이게 왜 좋냐면,
- 매번 다른 시트 열어서 복사할 필요가 없고
- 필터를 매번 다시 걸 필요도 없고
- 보고서 형식으로 재가공하는 작업도 훨씬 줄어든다
오늘은 이 조합을 직장인 실무 관점에서 정리해 보겠다.
1. 먼저, IMPORTRANGE가 뭐냐
문법은 아주 단순하다.
=IMPORTRANGE(구글시트URL, 데이터범위)
예를 들면,
=IMPORTRANGE("https://docs.google.com/......", "매출시트!A1:F")
이렇게 쓰면
다른 구글시트 파일의 매출시트!A1:F 범위를 현재 파일로 가져올 수 있다.
처음 연결할 때는 접근 허용 버튼을 한 번 눌러줘야 한다.
이 함수만 써도 파일 간 연결은 되지만,
실무에서는 대부분 여기서 끝나지 않는다.
우리가 진짜 원하는 건 이런 거다.
- 특정 날짜만 보고 싶다
- 특정 계정과목만 보고 싶다
- 공백은 제외하고 싶다
- 특정 단어가 들어간 행만 보고 싶다
- 여러 파일 데이터를 한 번에 합치고 싶다
- 합계나 피벗 형태로 요약하고 싶다
이럴 때 QUERY가 붙는다.
2. QUERY 함수는 “필터 + 정렬 + 집계 + 요약”을 한 줄로 하는 함수다
기본 문법은 아래와 같다.
=QUERY(데이터범위, "쿼리문", 헤더수)
예를 들면,
=QUERY(A1:F, "SELECT A, C, F WHERE B = '완료' ORDER BY F DESC", 1)
의미는 이렇다.
- A, C, F열만 가져오고
- B열이 ‘완료’인 행만 남기고
- F열 기준으로 내림차순 정렬해라
엑셀에서라면
필터 걸고, 열 숨기고, 정렬하고, 복사해서 다른 시트에 붙이는 작업이다.
그런데 QUERY는 이걸 한 줄로 끝낸다.
3. 실무에서는 A,B,C보다 Col1, Col2 방식이 더 낫다
같은 파일 안에서는 A, B, C로 써도 되지만,
외부 파일을 불러오는 IMPORTRANGE와 같이 쓸 때는 Col 방식이 훨씬 안정적이다.
예를 들어,
=QUERY(IMPORTRANGE(C10, D10), "SELECT Col1, Col2, Col3 WHERE Col2='외환차손'", 1)
이렇게 쓰는 식이다.
왜 Col 방식이 좋냐면,
- 외부 파일과 연결할 때 일관성이 좋고
- 중간에 열이 추가돼도 상대적으로 관리가 편하고
- 여러 파일을 합쳐서 다룰 때 더 안전하다
실무에서는 처음부터 Col1, Col2 습관을 들이는 것을 추천한다.
4. 사무직 실무에서 가장 많이 쓰는 패턴들
이제부터는 진짜 많이 쓰는 유형만 정리해 보겠다.
4-1. 특정 날짜만 조회하기
예를 들어 특정 일자의 전표만 보고 싶다면:
=QUERY(IMPORTRANGE(C10, D10),
"SELECT Col1,Col2,Col3,Col4,Col5
WHERE Col2='외환차손'
AND Col3 = DATE '2022-01-18'", 1)
기간 조건으로 바꾸면 이렇게 된다.
=QUERY(A1:N,
"SELECT *
WHERE C >= DATE '2022-04-01'
AND C <= DATE '2022-12-31'", 1)
이건 실무에서 이런 상황에 좋다.
- 월별 매출 집계
- 특정 기간의 회계 자료 조회
- 특정 날짜의 거래내역 점검
- 분기별 보고서용 데이터 추출
날짜 조건은 반드시 DATE 'yyyy-mm-dd' 형식으로 쓰는 것이 핵심이다.
4-2. 공백 행 제외하기
데이터 범위를 넉넉하게 잡아 두면 빈 행이 같이 끌려오는 경우가 많다.
그럴 때는:
=QUERY(IMPORTRANGE(C10, D10),
"SELECT * WHERE Col1 IS NOT NULL", 1)
반대로 공백만 찾고 싶으면:
=QUERY(A1:E, "SELECT * WHERE C IS NULL", 1)
이건 이런 상황에 유용하다.
- 입력 누락 데이터 찾기
- 실제 값이 있는 행만 보고 싶을 때
- 정리되지 않은 원본 데이터에서 빈 줄 제거할 때
4-3. 특정 문자가 포함된 행만 보기
예를 들어 “월별”이라는 단어가 들어간 항목만 찾고 싶다면:
=QUERY(A1:F, "SELECT B WHERE B CONTAINS '월별'", 1)
포함하지 않는 항목만 보고 싶다면:
=QUERY(A1:F, "SELECT B WHERE NOT B CONTAINS '재무제표'", 1)
비슷하게 LIKE도 쓸 수 있다.
=QUERY(A1:F, "SELECT B WHERE B LIKE '%월별%'", 1)
이건 실무에서 다음처럼 쓴다.
- 제목이나 비고에 특정 단어가 포함된 문서 찾기
- 계정명/프로젝트명 일부만 알고 있을 때 필터링
- 특정 패턴의 데이터만 분리할 때
4-4. 숫자 조건으로 필터링하기
예를 들어 50,000원 이상만 보고 싶다면:
=QUERY(A1:F, "SELECT E WHERE E >= 50000", 1)
범위 조건은 이렇게:
=QUERY(A1:F, "SELECT E WHERE E >= 1000 AND E <= 10000", 1)
특정 값 제외는 이렇게:
=QUERY(A1:F, "SELECT E WHERE E != 50000", 1)
이건 정말 자주 쓴다.
- 일정 금액 이상 지출만 보기
- 발주 수량이 일정 기준 이하인 것만 보기
- 수치 이상치 점검하기
- KPI 기준 미달 항목만 뽑기
4-5. 정렬까지 한 번에 하기
조건으로 걸러온 뒤 정렬까지 같이 하고 싶다면:
=QUERY(A1:Z, "SELECT * ORDER BY Z ASC", 1)
내림차순은:
=QUERY(A1:Z, "SELECT * ORDER BY Z DESC", 1)
실무에서는 대부분
“조건으로 걸러서, 최신순 또는 금액 큰 순으로 정렬”
이 패턴이 많다.
예를 들어,
- 미수금 큰 순
- 매출 높은 순
- 최근 업데이트 순
- 재고 부족 우선순위 정렬
같은 보고서를 만들 때 좋다.
5. 여러 파일 데이터를 한 번에 합치고 싶다면
이게 QUERY + IMPORTRANGE 조합의 진짜 강점이다.
예를 들어 서로 다른 두 파일의 데이터를 합쳐서 조회하려면:
=QUERY(
{IMPORTRANGE(C10,D10); IMPORTRANGE(C11,D11)},
"SELECT Col1,Col2,Col3,Col4,Col6,Col8,Col9
WHERE Col2='잡손실' AND Col4<>'[ 전 월 이 월 ]'", 1)
중괄호 { } 안에서 ;로 세로 결합을 한 것이다.
즉,
- 상반기 파일 + 하반기 파일
- 본사 파일 + 지점 파일
- 부서별 파일 여러 개
- 월별 파일 누적 취합
같은 작업을 수작업 없이 처리할 수 있다.
이 기능 하나만 잘 써도
“매달 파일 12개 열어서 붙여넣기” 같은 업무가 꽤 줄어든다.
6. 여러 항목을 한 번에 필터링하려면 MATCHES가 좋다
예를 들어 특정 담당자만 보고 싶다면:
=QUERY(A1:F,
"SELECT Col1, Col5
WHERE Col1 MATCHES '김과장|이대리|박사원'", 1)
이건 OR 조건을 많이 붙여야 할 때 아주 편하다.
또, 포함 조건을 더 유연하게 주고 싶다면 정규표현식을 쓸 수 있다.
=QUERY(B92:G99,
"SELECT Col1,Col3
WHERE Col1 MATCHES '.*(노란|빨간|파란).*'", 1)
의미는 이렇다.
- 앞뒤에 어떤 글자가 와도 상관없고
- ‘노란’, ‘빨간’, ‘파란’ 중 하나가 포함된 값만 찾아라
실무에서는 이런 데 쓸 수 있다.
- 특정 담당자 여러 명 묶어서 보기
- 특정 키워드군이 들어간 항목만 추출
- 텍스트 패턴으로 세밀하게 필터링하기
7. 합계와 요약 보고서는 GROUP BY가 핵심이다
예를 들어 분류별 합계를 보고 싶다면:
=QUERY(B92:G99,
"SELECT Col2, SUM(Col3)+SUM(Col4)+SUM(Col5)
WHERE Col1 IS NOT NULL
GROUP BY Col2
LABEL SUM(Col3)+SUM(Col4)+SUM(Col5) '1분기'", 1)
이 수식은 쉽게 말하면,
- 분류별로 묶고
- 1월, 2월, 3월 값을 더해서
- 1분기 합계를 보여주는 것이다
즉, 피벗테이블 비슷한 요약표를 수식으로 바로 만들 수 있다.
이건 실무에서 엄청 좋다.
- 부서별 비용 합계
- 카테고리별 매출 요약
- 담당자별 건수 요약
- 분기별 누적 실적 정리
8. 피벗 형태 보고서도 QUERY로 가능하다
예를 들어 이런 식이다.
=QUERY($B$50:$F$57,
"SELECT C, B, SUM(F)
GROUP BY C, B
PIVOT E", 1)
이 수식은
행/열 방향을 바꿔서 요약표처럼 보여준다.
즉, 피벗테이블을 새로 만들지 않아도
수식만으로 보고서 모양을 고정할 수 있다.
특히 좋은 점은,
- 원본이 바뀌면 자동 반영되고
- 보고서 시트 형식이 깨지지 않고
- 다른 수식과 연결하기 쉽다
정기 보고서 만들 때 꽤 유용하다.
9. LABEL, FORMAT, OFFSET까지 쓰면 보고서 완성도가 올라간다
예를 들어:
=QUERY(A:AG,
"SELECT Col2, Col3, Col14
WHERE Col2 IS NOT NULL
ORDER BY Col14 DESC
LABEL Col14 '현재 수량'
FORMAT Col2 'yy.MM.dd'
OFFSET 1", 1)
여기서 할 수 있는 일은:
- LABEL : 결과 열 제목 바꾸기
- FORMAT : 날짜/숫자 표시 형식 지정
- OFFSET : 위쪽 몇 줄 건너뛰기
즉, 단순 조회를 넘어서
바로 보고서에 붙여도 되는 형태로 만들 수 있다.
이런 디테일이 실무에서는 꽤 중요하다.
10. 실무자가 특히 기억하면 좋은 팁
① 외부 파일이면 Col 방식으로 쓰자
A,B,C보다 Col1, Col2가 관리가 편하다.
② 날짜 조건은 DATE 형식을 정확히 쓰자
DATE '2022-01-18'
이 형식이 가장 안전하다.
③ 빈 행 제거는 IS NOT NULL이 거의 필수다
데이터 범위를 넓게 잡는 습관이 있다면 특히 유용하다.
④ 여러 명, 여러 조건은 MATCHES가 편하다
OR를 길게 쓰는 것보다 훨씬 깔끔하다.
⑤ 여러 파일 취합은 { } 와 IMPORTRANGE 조합으로 끝난다
월별/부서별 파일 취합 업무에 특히 강하다.
11. 이런 분들에게 특히 추천한다
이 조합은 아래 같은 사무직 직장인에게 특히 좋다.
- 회계/재무 자료를 자주 취합하는 분
- 영업 실적 보고서를 자주 만드는 분
- 인사/총무 데이터 정리를 반복하는 분
- 여러 부서 파일을 합쳐야 하는 분
- 매번 필터, 복사, 정렬을 반복하는 분
즉,
**“반복 조회 + 반복 정리 + 반복 보고”**가 많은 사람일수록
효과가 크다.
마무리
엑셀에서는
파일 열고 → 복사하고 → 붙여넣고 → 필터 걸고 → 피벗 돌리고 → 다시 정리하는 일이 익숙하다.
그런데 구글 스프레드시트에서는
IMPORTRANGE + QUERY 조합만 익혀도
이 과정을 상당 부분 자동화할 수 있다.
처음엔 문법이 낯설어 보여도,
실제로 많이 쓰는 건 아래 몇 가지 패턴이 전부다.
- 날짜 조건
- 공백 제외
- 특정 문자 포함
- 숫자 조건
- 정렬
- 그룹화
- 다중 파일 결합
- MATCHES
- PIVOT
이 정도만 익혀도
단순 반복 보고서 작업 속도가 꽤 빨라진다.
결론은 간단하다.
복붙으로 버티는 단계는 이제 졸업하고,
QUERY로 한 줄 보고서를 만드는 단계로 가면 된다.