구글시트 ARRAYFORMULA 오류에 대해 2026년 현재 실무에서 자주 겪는 문제와 해결 방법을 정리했습니다. 구글시트에서 반복 계산을 자동화할 때
가장 많이 사용하는 함수가 ARRAYFORMULA다.
특히:
- 수식 자동 확장
- 행이 추가되어도 자동 계산
- 반복 계산 제거
목적으로 많이 사용된다.
하지만 실무에서 자주 듣는 말은 이것이다.
“수식은 맞는데 값이 안 나와요.”
- 결과가 비어 있음
- 일부만 계산됨
- 갑자기 오류 발생
- 기존 값이 덮어써짐
이 글에서는
단순 해결법이 아니라
왜 ARRAYFORMULA가 실패하는지 → 구조적으로 어떻게 해결하는지 정리한다.
구글시트에서 반복 계산을 자동화할 때
가장 많이 사용하는 함수가 ARRAYFORMULA다.
특히:
- 수식 자동 확장
- 행이 추가되어도 자동 계산
- 반복 계산 제거
목적으로 많이 사용된다.
하지만 실무에서 자주 듣는 말은 이것이다.
“수식은 맞는데 값이 안 나와요.”
- 결과가 비어 있음
- 일부만 계산됨
- 갑자기 오류 발생
- 기존 값이 덮어써짐
이 글에서는
단순 해결법이 아니라
왜 ARRAYFORMULA가 실패하는지 → 구조적으로 어떻게 해결하는지 정리한다.
핵심 정리: ① ARRAYFORMULA는 빈 셀에만 확장된다. ② IF, TEXT 함수와 결합 시 배열 처리와 데이터 타입에 유의한다. ③ IMPORTRANGE 등 대용량 데이터 처리 시 지연을 방지하는 전략이 필요하다.
ARRAYFORMULA의 내부 동작 원리
기본 구조:
=ARRAYFORMULA(수식)
예시:
=ARRAYFORMULA(A2:A * B2:B)
ARRAYFORMULA는
단일 수식을 배열 단위로 확장한다.
즉:
- A2 × B2
- A3 × B3
- A4 × B4
를 한 번에 처리한다.
중요한 점은:
ARRAYFORMULA는 “비어 있는 공간”에만 확장된다.
이미 값이 있는 셀이 있으면
확장이 멈춘다.

값이 안 나오는 대표 원인 1 – 아래 셀에 기존 값이 있음
예:
=ARRAYFORMULA(A2:A * B2:B)
그런데 C3 셀에 이미 값이 있다면
C2까지만 계산되고 멈춘다.
🔎 이유
ARRAYFORMULA는 기존 데이터를 덮어쓰지 않는다.
✅ 해결 방법
| 문제 상황 | 해결책 |
|---|---|
| ARRAYFORMULA 값이 일부만 나옴 (아래 셀에 값이 있음) | ARRAYFORMULA 적용 범위 아래 셀의 기존 데이터를 삭제한다. |
| ARRAYFORMULA가 중간에 갑자기 멈춤 (수식 범위 내에 값 삽입) | ARRAYFORMULA는 항상 빈 열에 배치하며, 수동으로 값을 입력하지 않는다. |
- 확장 범위 아래 데이터 삭제
- ARRAYFORMULA는 항상 “빈 열”에 배치
대표 원인 2 – IF 조건에서 배열 처리 누락
잘못된 예:
=ARRAYFORMULA(IF(A2:A="", "", A2:A * B2:B))
이 구조는 대부분 정상이나
조건이 배열 형태를 제대로 처리하지 못하면
값이 일부만 표시된다.
✅ 안정적인 패턴
=ARRAYFORMULA(
IF(A2:A="","",
A2:A * B2:B
)
)
가독성과 안정성을 위해
줄바꿈 구조 추천.
대표 원인 3 – TEXT 함수와 결합 시 오류
=ARRAYFORMULA(TEXT(A2:A,"yyyy-mm-dd"))
이 경우:
- 날짜 타입이 TEXT로 변환
- 이후 QUERY에서 조건 실패
즉, ARRAYFORMULA 자체 문제가 아니라
타입 변환 문제로 이어진다.
대표 원인 4 – IMPORTRANGE와 결합 시 지연
=ARRAYFORMULA(
IMPORTRANGE("URL","Sheet1!A:C")
)
이 구조는:
- 대용량 호출
- 서버 캐싱
- 응답 지연
문제가 발생할 수 있다.
✅ 해결 전략
- IMPORTRANGE 단독 실행 후
- ARRAYFORMULA 적용
- 범위 최소화
실무 시나리오 1 – 자동 매출 계산
목표:
- 새 행 추가 시 자동 계산
=ARRAYFORMULA(
IF(A2:A="","",
B2:B * C2:C
)
)
주의:
- 열 전체 사용 시 성능 저하
- 실제 데이터 범위로 제한 권장
실무 시나리오 2 – 상태 자동 표시
예:
=ARRAYFORMULA(
IF(D2:D>100000,"고매출","일반")
)
조건 비교 시
숫자/문자 타입 혼합 주의.
ARRAYFORMULA vs MAP 함수
최근에는 MAP() 함수가 더 안전한 경우도 많다.
예:
=MAP(A2:A,B2:B,
LAMBDA(a,b,a*b)
)
장점:
- 개별 행 단위 처리
- 오류 발생 시 영향 범위 제한
ARRAYFORMULA는 강력하지만
과도하게 사용하면 디버깅이 어려워진다.
성능 최적화 팁
✔ 전체 열 A:A 사용 지양
✔ IF 조건으로 불필요 계산 방지
✔ 중첩 ARRAYFORMULA 최소화
✔ QUERY 이후 적용 고려
자주 묻는 질문
Q1. 왜 일부만 계산되나요?
→ 아래 셀에 값 존재 가능성
Q2. 갑자기 작동을 멈췄어요
→ 열 중간에 값 삽입 여부 확인
Q3. TEXT로 변환된 이유는?
→ TEXT 함수 사용 여부 확인
📌 최종 체크리스트
✔ 확장 범위 아래 데이터 비어 있는가
✔ IF 조건 배열 처리 정상인가
✔ TEXT 함수로 타입 깨지지 않았는가
✔ IMPORTRANGE 단독 승인했는가
✔ 범위 최소화했는가
마무리
ARRAYFORMULA는 단순 반복 계산 도구가 아니라
“배열 확장 엔진”에 가깝다.
작동 원리를 이해하지 않으면
값이 안 나오는 문제가 반복된다.
실무에서는
ARRAYFORMULA를 무조건 사용하는 것이 아니라
구조에 맞게 사용하는 것이 중요하다.
이 블로그에서는
구글시트·빅쿼리·Looker Studio를 활용하며
실제로 막혔던 문제를 구조적으로 정리하고 있다.
💬 이 글이 도움이 되셨다면
구글시트 ARRAYFORMULA 오류 관련 궁금한 점이나 더 알고 싶은 내용이 있다면 댓글로 남겨주세요! 실무에서 겪은 경험을 공유해 주셔도 좋습니다.
'업무 데이터 자동화' 카테고리의 다른 글
| BigQuery WHERE 날짜 조건 오류 해결 방법 (DATE·TIMESTAMP 비교 문제) (0) | 2026.02.06 |
|---|---|
| BigQuery 날짜 타입 차이 정리 (DATE·DATETIME·TIMESTAMP 언제 쓰나?) (0) | 2026.02.04 |
| 구글시트 날짜가 문자(TEXT)로 인식될 때 원인과 해결 방법 (0) | 2026.01.30 |
| 구글시트 QUERY 함수 기본 문법과 자주 발생하는 오류 정리 (0) | 2026.01.28 |
| 구글시트 QUERY 날짜 조건 오류 해결 방법 (TEXT → DATE 문제 정리) (0) | 2026.01.26 |
