[Google Sheets] 구글 스프레드시트 함수 사용하기 - ARRAYFORMULA
구글 스프레드시트를 활용하면서 반복적인 작업을 줄이고 싶으신가요? 여러 행이나 열에 걸쳐 동일한 수식을 적용해야 하는 상황에서 일일이 수식을 복사하는 것은 비효율적입니다. 이럴 때 ARRAYFORMULA 함수가 강력한 해결책이 될 수 있습니다. ARRAYFORMULA는 단일 수식으로 여러 행과 열에 계산을 적용할 수 있게 해주는 구글 스프레드시트의 강력한 함수입니다. 이 함수를 활용하면 수식 작성 시간을 크게 줄이고, 시트의 성능을 향상시키며, 데이터가 변경되어도 자동으로 결과가 업데이트되는 동적인 스프레드시트를 구축할 수 있습니다.
1. ARRAYFORMULA 함수란?
ARRAYFORMULA는 구글 스프레드시트에서 배열 계산을 처리하기 위한 핵심 함수입니다. 이 함수를 사용하면 단일 셀에 수식을 입력하고도 여러 행이나 열에 걸쳐 결과를 얻을 수 있습니다. 일반적인 함수가 단일 값을 대상으로 작동하는 반면, ARRAYFORMULA는 셀 범위 전체를 처리할 수 있어 대량의 데이터를 효율적으로 다룰 수 있습니다.
ARRAYFORMULA의 가장 큰 장점은 수식을 한 번만 작성하면 된다는 점입니다. 새로운 데이터가 추가되더라도 수식을 복사할 필요 없이 자동으로 적용됩니다. 이는 대규모 데이터셋을 관리할 때 특히 유용하며, 시트의 성능과 유지 관리를 개선하는 데 큰 도움이 됩니다.
또한 ARRAYFORMULA는 일반 함수에서는 처리하기 어려운 배열 연산을 가능하게 합니다. 예를 들어, 조건부 계산, 다중 범위 연산, 행렬 수학 등을 단일 수식으로 처리할 수 있습니다.
2. 함수 기본 형태 및 매개변수
ARRAYFORMULA 함수의 기본 형태는 다음과 같습니다:
매개변수 설명
매개변수 | 필수/선택 | 설명 |
---|---|---|
배열_수식 | 필수 | 범위, 하나의 셀 범위 또는 크기가 동일한 여러 범위를 사용한 수학 표현식 또는 하나의 셀보다 큰 결과를 반환하는 함수입니다. 일반 함수, 조건문, 산술 연산자 등이 포함될 수 있습니다. |
최근 구글 스프레드시트 업데이트로 많은 배열 수식이 인접한 셀까지 자동으로 확장되어 일부 경우에는 ARRAYFORMULA 함수를 명시적으로 사용하지 않아도 됩니다. 그러나 복잡한 수식이나 조건부 로직을 사용할 때는 여전히 ARRAYFORMULA가 필요합니다.
수식을 수정하는 도중 Ctrl+Shift+Enter(Windows) 또는 Cmd+Shift+Enter(Mac)를 누르면 수식 앞에 ARRAYFORMULA를 자동으로 추가할 수 있습니다. 이 단축키는 배열 수식 작성 시간을 크게 단축시켜 줍니다.
3. 실습용 샘플 데이터
ARRAYFORMULA 함수의 다양한 활용법을 실습하기 위해 아래 샘플 데이터를 준비했습니다. 이 데이터를 활용하여 예시를 따라해 보세요.
영업 실적 데이터
직원명 | 지역 | 1분기 판매량 | 2분기 판매량 | 단가 |
---|---|---|---|---|
김영희 | 서울 | 120 | 145 | 25000 |
이철수 | 부산 | 95 | 110 | 28000 |
박지민 | 대전 | 85 | 92 | 22000 |
최현우 | 인천 | 105 | 118 | 24000 |
정민지 | 광주 | 78 | 88 | 26000 |
4. 기본 사용 예시
ARRAYFORMULA 함수의 기본적인 활용법을 알아보겠습니다. 아래 예시들은 배열 수식의 기본 개념을 이해하는 데 도움이 될 것입니다.
예시 1: 간단한 계산 적용하기
영업 실적 데이터에서 1분기와 2분기 판매량의 합계를 계산해 보겠습니다.
이 수식은 각 직원의 1분기와 2분기 판매량을 더한 결과를 반환합니다. 수식을 입력한 셀 기준으로 계산된 결과 배열이 셀에 순서대로 자동으로 입력됩니다.
예상 결과값:
- 265
- 205
- 177
- 223
- 166
![]() |
기본 사용 예시1. 간단한 계산 적용 실행결과 |
예시 2: 판매 금액 계산하기
이번에는 1분기 판매량에 단가를 곱해 1분기 판매 금액을 계산해 보겠습니다.
이 수식은 각 직원의 1분기 판매량에 해당 제품의 단가를 곱한 결과를 반환합니다. 수식을 입력한 셀 기준으로 결과가 자동으로 표시됩니다. 계산은 C2*E2, C3*E3, ..., C6*E6로 계산 된 결과가 입력됩니다.
예상 결과값:
- 3,000,000
- 2,660,000
- 1,870,000
- 2,520,000
- 2,028,000
![]() |
기본 사용 예시2. 판매 금액 계산 실행결과 |
예시 3: 헤더 포함한 계산
헤더를 포함한 범위에서 ARRAYFORMULA를 사용할 때는 조건문을 활용하여 헤더 행을 처리할 수 있습니다. 각 직원의 1분기와 2분기 판매량에 10% 인상을 적용해 보겠습니다.
이 수식은 첫 번째 행에는 새로운 헤더를 표시하고, 그 이외의 행에서는 각 판매량에 10%를 더한 결과를 반환합니다. 비어있는 셀은 그대로 비워둡니다.
수식은 다음과 같이 적용됩니다.
- ROW(C1:D6)=1 → 첫 번째 행(헤더 행)인지 확인합니다. ROW(C1)은 각 셀의 행 번호를 반환합니다. ROW(C1)은 "1", ROW(C2)는 "2"를 반환합니다.
- 만약 첫 번째 행이라면 → {"1분기 인상량", "2분기 인상량"}을 반환합니다. 이것은 새로운 헤더 텍스트입니다.
- 첫 번째 행이 아니라면 → 두 번째 IF 조건으로 넘어갑니다.
- IF(C1:D6 ="", "") - 셀이 비어 있는지 확인합니다. 셀이 비어 있다면 → 빈 문자열("")을 반환합니다.
- 셀이 비어 있지 않다면 → ROUND(C1:D6*1.1, 0)를 계산합니다. 이는 값에 1.1을 곱하고(10% 증가) 반올림하는 연산입니다.
예상 결과값 (일부):
- 김영희: 1분기 132, 2분기 160
- 이철수: 1분기 105, 2분기 121
- ...
![]() |
기본 사용 예시3. 헤더 포함한 계산 실행결과 |
예시 4: 문자열 연결하기
ARRAYFORMULA를 사용하여 문자열을 연결할 수도 있습니다. 영업 실적 데이터의 직원명과 지역을 연결해 보겠습니다.
이 수식은 직원명과 지역을 괄호 형식으로 연결하여 표시합니다. 첫 번째 셀에는
"직원 정보"라는 헤더가 표시됩니다. 수식의 동작방식은 "예시 3"과 동일합니다.
마지막에 문자열을 연결하는 부분은 A2&"("&B2&")" 로 각 셀에
대한 문자열을 연결합니다. "&" 기호를 사용하면 문자를 연결할 수
있습니다.
결과적으로 "A2셀 문자 + 왼쪽괄호 + B2셀 문자 + 오른쪽
괄호" 형태로 산출결과가 출력 됩니다.
예상 결과값:
- 직원 정보
- 김영희 (서울)
- 이철수 (부산)
- 박지민 (대전)
- 최현우 (인천)
- 정민지 (광주)
![]() |
기본 사용 예시4. 문자열 연결하기 실행결과 |
5. 고급 사용 예시
ARRAYFORMULA의 고급 활용법을 살펴보겠습니다. 이 예시들은 실무에서 자주 필요한 복잡한 작업을 처리하는 데 도움이 될 것입니다.
예시 : 조건부 계산 (IF와 ARRAYFORMULA 결합)
영업 실적 데이터에서 판매량에 따라 인센티브를 차등 지급하는 예시를 살펴보겠습니다.
이 수식은 1분기와 2분기 판매량의 합계에 따라 인센티브 등급을 결정합니다.
합계가 250 이상이면 A등급, 200 이상이면 B등급, 150 이상이면 C등급, 나머지는
D등급입니다.
수식은 복잡해 보이지만 "4. 기본 사용 예시"의 "예시
3"과 동일하게 동작합니다. 등급을 나누기 위해 추가적으로 IF문이 포함되었습니다.
예상 결과값:
- 김영희: A등급 (30%)
- 이철수: B등급 (20%)
- 박지민: C등급 (10%)
- 최현우: B등급 (20%)
- 정민지: C등급 (10%)
![]() |
고급 사용 예시 조건부 계산의 실행 결과 |
다차원 배열 수식을 작성할 때는 단계별로 분리하여 작성한 후 하나씩 합치는 방식으로 접근하면 복잡한 오류를 줄일 수 있습니다. 또한 각 단계별로 결과를 별도의 셀에 출력해 보면 디버깅에 도움이 됩니다.
6. 응용 분야
ARRAYFORMULA 함수는 다양한 비즈니스 환경에서 활용될 수 있습니다. 실제 업무에서 적용할 수 있는 응용 분야를 살펴보겠습니다.
재무 분석 및 회계
재무 분석 분야에서 ARRAYFORMULA는 재무제표 자동화, 예산 계획, 현금 흐름 분석에 큰 도움이 됩니다. 월별 판매 데이터를 기반으로 연간 매출 예측을 자동화하거나, 여러 계정의 손익을 한 번에 계산할 수 있습니다. 또한 다양한 시나리오에 따른 민감도 분석을 수행할 때도 효율적입니다. 예를 들어, 다양한 비율의 이자율이나 환율 변동에 따른 재무 상태 변화를 한 번의 수식으로 시뮬레이션할 수 있습니다.
영업 성과 분석
영업 부서에서는 ARRAYFORMULA를 활용하여 영업사원별, 지역별, 제품별 실적을 자동으로 집계하고 비교할 수 있습니다. 판매 목표 대비 실적을 계산하거나, 고객별 구매 패턴을 분석하는데 유용합니다. 또한 인센티브 계산을 자동화하여 판매량에 따른 보너스를 자동으로 산출할 수 있으며, 시간 경과에 따른 판매 트렌드를 분석하여 향후 전략 수립에 활용할 수 있습니다.
인사 관리 및 급여 계산
인사 담당자는 ARRAYFORMULA를 사용하여 직원들의 근무 시간, 초과 근무, 휴가 사용 등을 자동으로 계산할 수 있습니다. 직원별 성과 지표를 통합하여 평가하거나, 복잡한 급여 공식을 일괄 적용하여 급여 계산을 자동화할 수 있습니다. 또한 직원 교육 이수 현황이나 역량 평가 지표를 자동으로 계산하여 인적 자원 개발 계획을 수립하는 데 활용할 수 있습니다.
교육 및 학습 평가
교육 현장에서는 ARRAYFORMULA를 활용하여 학생들의 성적을 관리하고 평가할 수 있습니다. 여러 과목의 점수를 바탕으로 종합 성적을 자동 계산하거나, 학습 진도에 따른 성취도를 추적할 수 있습니다. 또한 출석률이나 과제 제출 현황 등을 종합적으로 평가하여 학생별 맞춤형 피드백을 제공하는데 도움이 됩니다. 대규모 온라인 강의에서도 수강생들의 참여도와 성취도를 효율적으로 분석할 수 있습니다.
7. 주의사항
ARRAYFORMULA 함수를 효과적으로 활용하기 위해 주의해야 할 사항들을 알아보겠습니다.
대용량 데이터에 ARRAYFORMULA를 적용할 때는 성능에 주의해야 합니다. 특히 중첩된 조건문이나 복잡한 계산이 포함된 배열 수식은 처리 속도가 느려질 수 있습니다. 가능하면 계산 범위를 필요한 부분으로 제한하거나, ARRAY_CONSTRAIN 함수를 활용하여 결과 크기를 제한하는 것이 좋습니다.
ARRAYFORMULA는 내보내기(Export)할 수 없습니다. 구글 스프레드시트에서 Excel이나 다른 형식으로 내보낼 때 배열 수식은 일반 수식으로 변환되지 않습니다. 따라서 다른 시스템과 호환성이 필요한 경우에는 대안을 고려해야 합니다.
ARRAYFORMULA 사용 시 발생할 수 있는 일반적인 오류와 해결 방법:
- 배열 크기 불일치: 수식에 사용되는 모든 배열은 크기가 같거나 단일 셀이어야 합니다. 배열 크기가 다르면 #N/A 오류가 발생할 수 있습니다.
- 빈 셀 처리: 배열 범위에 빈 셀이 있으면 예상치 못한 결과가 나올 수 있습니다. IF 함수를 사용하여 빈 셀을 적절히 처리해야 합니다.
- 순환 참조: 배열 수식이 자신의 결과를 참조하면 순환 참조 오류가 발생합니다. 수식이 출력될 범위를 입력 범위와 분리해야 합니다.
- 함수 호환성: 모든 함수가 ARRAYFORMULA와 함께 사용할 수 있는 것은 아닙니다. 일부 함수는 배열 입력을 지원하지 않을 수 있습니다.
복잡한 ARRAYFORMULA를 작성할 때는 단계별로 나누어 구성하는 것이 좋습니다. 각 단계의 결과를 중간 셀에 출력하여 확인하면 디버깅이 용이하며, 전체 수식이 작동하는지 확인한 후에 최종 버전으로 통합할 수 있습니다.
마지막으로, ARRAYFORMULA는 매우 강력하지만 항상 최선의 해결책은 아닐 수 있습니다. 특히 매우 복잡한 계산이나 대용량 데이터 처리가 필요한 경우에는 QUERY 함수나 Apps Script와 같은 다른 대안을 함께 고려하는 것이 좋습니다.
이번 포스팅에서는 구글 스프레드시트의 강력한 기능인 ARRAYFORMULA에 대해 알아보았습니다. 단일 수식으로 여러 행과 열에 걸쳐 계산을 수행할 수 있는 이 함수는 반복 작업을 줄이고 스프레드시트의 유지 관리를 간소화하는 데 큰 도움이 됩니다. 기본적인 산술 연산부터 복잡한 조건부 로직까지 다양한 활용법을 통해 데이터 처리 효율성을 크게 높일 수 있습니다.
다만, 배열 수식은 복잡해질수록 성능에 영향을 미칠 수 있으며, 내보내기 제한과 같은 한계점도 있습니다. 효과적인 사용을 위해서는 적절한 범위 설정과 구조화된 접근이 중요합니다. 실무에서 자주 반복되는 작업이 있다면, ARRAYFORMULA를 활용하여 작업 시간을 단축하고 오류 가능성을 줄여보시기 바랍니다.