본문 바로가기
구글시트 함수소개-기초

ARRAYFORMULA 함수 - 구글 스프레드시트

by 오토시트 2021. 10. 4.

ARRAYFORMULA함수란?

구글스프레드시트 ARRAYFORMULA함수는 여러 셀 범위를 출력하도록 합니다. 다양한 함수와 조합할 때 배열기능을 지원합니다. 예를들어, 수천개의 함수를 입력하는 대신 맨 윗줄에만 입력하도록 하는 효율성을 발휘합니다.

 

구글시트로 업무시스템을 구축할 때 반드시 염두해야 하는 점이 있습니다. 바로 '데이터가 변경돼도 함수수정을 최소화' 하도록 만들어야 하는 점인데요. 이를 위해서 배열기능. 그중에서도 ARRAYFORMULA는 무조건 잘 사용해야 합니다.

 

아래 예제들은 공유(보기 권한)된 구글 스프레드시트에서 확인하실 수 있습니다. 예제 스프레드시트(https://bit.ly/3uBxwAB)를 참고해주세요(파일 - 사본만들기 후 사용)

 

※ 예제에 사용된 정보는 가상의 데이터입니다.

 

 

ARRAYFORMULA함수는 어떻게 사용하나요?

아래 자료에서 인원별 국어와 영어점수의 합계를 계산한다고 가정해보겠습니다. 보통은 D2셀에 수식을 입력하고 자동채우기를 하지만, ARRAYFORMULA함수를 사용하여 효율적으로 계산해보겠습니다.

 

원본자료

 

D2셀에 아래수식을 입력해주세요.

 

=ARRAYFORMULA(B2:B+C2:C)

 

결과는 다음과 같습니다. D2셀에만 입력을 했는데 D2셀 아래의 모든 계산이 한번에 됐습니다.

 

D2열에 수식입력 한번으로 모든 인원의 합계 계산 

 

아래의 불필요한 합계(0)를 없애주려면 ARRAYFORMULA함수 바로 다음에 IF함수로 조건을 추가해주세요. A2부터 A끝까지 데이터가 없다면 비워 놓으라는 의미입니다.

 

=ARRAYFORMULA(IF(A2:A="","",B2:B+C2:C))

 

14행 이후에 0 표시가 잘 없어졌습니다.

 

불필요한 행 오류(0) 제거

 

 

IF함수와 함께 사용하기

이번엔 합계점수가 100점 이상인 사람에게 "합격", 미만인 사람에게 "불합격"을 표시해보겠습니다. E2셀에 아래 함수를 입력해주세요.

 

=ARRAYFORMULA(IF(D2:D>=100,"합격","불합격"))

 

결과는 다음과 같습니다.

 

D2열에 수식입력 한번으로 합격여부 출력

 

13행 이후에 합격, 불합격여부를 표시되는 문제가 있습니다. ARRAYFORMULA함수 바로 다음에 IF함수로 조건을 추가해주세요. A2부터 A끝까지 데이터가 없다면 비워 놓으라는 의미입니다.

 

=ARRAYFORMULA(IF(A2:A="","",IF(D2:D>=100,"합격","불합격")))

 

14행 이후에 불필요한 값이 잘 없어졌습니다.

 

불필요한 행 오류 제0거

 

 

데이터 범위를 불러올때도 유용합니다

다른 시트에서 셀 범위를 불러올때 유용합니다. 새 시트 '데이터불러오기'를 만들고 A1셀에 다음 수식를 입력해주세요.

 

=ArrayFormula('데이터'!A1:E)

 

ARRAYFORMULA로 감싸주어 셀 범위를 한번에 불러왔습니다. 원본데이터가 변경돼도 함수를 수정할 필요가 없습니다.

 

셀범위 불러오기

 

 

위 내용을 영상으로 보기

댓글