구글시트 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 오류 관련 궁금한 점이나 더 알고 싶은 내용이 있다면 댓글로 남겨주세요! 실무에서 겪은 경험을 공유해 주셔도 좋습니다.

+ Recent posts