배열 함수로 업무 효율을 높이는 방법에 대하여 알아보겠습니다. 구글 스프레드 시트는 업무용 스프레드시트 프로그램으로, 데이터를 입력하고, 계산하고, 정리하는 데 사용할 수 있습니다. 구글 시트에는 다양한 함수가 제공되며, 그 중 하나가 배열 함수입니다. 배열 함수는 한 번의 함수 호출로 여러 셀의 데이터를 처리할 수 있어 업무 효율을 높이는 데 도움이 됩니다.
배열 함수는 일반 함수와 사용 방법이 약간 다릅니다. 배열 함수는 반드시 중괄호로 묶어야 하며, 인수는 배열로 전달해야 합니다. 배열은 단일값이 아니라 여러 행 / 열로 이주어진 다수의 값 집합입니다.
배열 함수의 종류
배열 함수의 종류는 매우 다양합니다. 다음은 배열 함수의 몇 가지 예입니다.
SPLIT
SPLIT(텍스트, 구분자, [각 문자에서 분할], [빈 문자 제거
문자열을 특정 구분자를 기준으로 분할하여 배열로 반환하는 함수로 분할된 각 부분은 배열의 각 요소로 저장됩니다.
텍스트 : 분할할 대상 문자열
구분자 : ‘텍스트’를 분할할 때 사용하는 구분자로, 문자열내에 특정문자나 기호를 기준으로 분할할 때 사용
[각 문자에서 분할] : 선택사항, ‘구분자’에 포함된 각 문자에서 ‘텍스트’를 나눌지 여부
[빈 문자 제거] : 선택사항, 분할 결과에서 비어 있는 텍스트 메시지를 삭제할 것인지 결정
INDEX
INDEX(참조, [행], [열])
참조된 자료의 행 또는 열의 데이터를 반환합니다. 말로 설명하면 어려우니 예제로 살펴보겠습니다.
ARRAYFORMULA
SPLIT함수는 단일 셀을 인수로 받아서 분할하여 반환하는 배열 함수입니다. 그러나 SPLIT함수 혼자서는 여러 셀로 이루어진 범위를 인수로 받을 수 없습니다. 이를 범위로 인수를 받을 수 있도록 보완해주는 함수가 ARRAYFORMULA입니다.
ARRAYFORMULA(배열_수식)
이와 같이 SPLIT, VLOOKUP을 사용시에는 함수를 여러번 작성하여 결과를 얻어내었다면, ARRAYFORMULA는 계산 결과를 자동으로 배열로 혹장하기 때문에 수식을 일일이 복사&붙여넣기하거나, 범위를 지정하여 적용할 필요가 없어, 수식에 대한 오류를 줄이고 효율적인 작업으로 시간을 단축할 수 있습니다.
이 함수를 사용시 주의사항은 함수의 결과가 반환이 되는 곳 위 예시의 경우 C45~F46부분에 수식나 데이터가 있으면 “#REF!”오류가 발생합니다. C44부분에서 데이터를 덮어쓰기 때문에 오류가 발생하므로, 반드시 수식으로 계산되어야 할 셀은 공백으로 있어야 합니다.
arrayformula는 대부분의 함수와 함께 사용할 수 있지만, 일부 함수는 arrayformula와 함께 동작하지 않거나 제한적으로 동작할 수 있습니다. 이러한 함수들은 주로 범위 또는 배열에 대한 입력을 요구하거나, 특정한 동작 방식을 가지고 있어서 arrayformula의 자동 확장과 충돌할 수 있습니다.
아래는 일반적으로 arrayformula와 함께 동작하지 않거나 제한적으로 동작할 수 있는 함수들의 몇 가지 예시입니다:
- SUMIFS, COUNTIFS, AVERAGEIFS 등의 조건부 합계, 개수, 평균 계산 함수: 이러한 함수들은 일반적으로 범위와 조건을 입력으로 받아 결과를 계산합니다. arrayformula를 사용하면 범위와 조건이 자동으로 확장되므로 정확한 결과를 얻을 수 없습니다.
- FILTER 함수: FILTER 함수는 주어진 조건에 따라 배열을 필터링하는데 사용됩니다. 이 함수는 일부 셀만 선택하여 필터링하는 것이 아니라 전체 배열에 대해 작동하기 때문에 arrayformula와 함께 사용할 때 충돌할 수 있습니다.
- SORT 함수: SORT 함수는 배열을 정렬하는 데 사용됩니다. 정렬된 결과는 원래 배열의 순서와 다를 수 있기 때문에 arrayformula와 함께 사용할 때 결과가 예상과 다를 수 있습니다.
- IMPORTRANGE 함수: IMPORTRANGE 함수는 다른 시트에서 데이터를 가져오는 데 사용됩니다. arrayformula를 사용하여 범위를 확장하면 IMPORTRANGE 함수가 동작하지 않을 수 있습니다.
이 외에도 다른 함수들 중에서도 arrayformula와 함께 동작하지 않는 경우가 있을 수 있으므로, 사용하고자 하는 함수가 arrayformula와 함께 동작하는지 여부를 확인하는 것이 좋습니다. 일반적으로 arrayformula와 함께 동작하지 않는 함수들은 대부분 범위나 조건에 따라 동작하기 때문에, 이러한 함수를 사용할 때는 다른 방법을 고려해야 할 수도 있습니다.
IMPORTRANGE
IMPORTRANGE 함수는 구글 시트에서 다른 시트의 데이터를 가져오는데 사용되는 함수입니다. 다른 시트의 특정 범위의 데이터를 현재 시트로 가져올 수 있습니다. IMPORTRANGE 함수는 다음과 같은 구문을 가지고 있습니다:
IMPORTRANGE(스프레드시트URL, 범위)
- 스프레드시트URL: 가져올 데이터가 있는 스프레드시트의 URL입니다. 데이터를 가져올 시트가 포함된 스프레드시트의 URL을 입력해야 합니다.
- 범위: 가져올 데이터의 범위를 지정합니다. 일반적으로 ‘시트명!범위’ 형식으로 입력합니다.
예를 들어, 다른 시트에 있는 “Sheet1” 시트의 A1:C10 범위의 데이터를 현재 시트로 가져오려면 다음과 같이 IMPORTRANGE 함수를 사용합니다:
=IMPORTRANGE("스프레드시트URL", "Sheet1!A1:C10")
실제로 사용할 때는 “스프레드시트URL” 부분에 가져올 스프레드시트의 URL을 입력해야 합니다. 예를 들어, “https://docs.google.com/spreadsheets/d/1234567890abcdefg”라는 URL을 가진 스프레드시트에서 데이터를 가져오고 싶다면 다음과 같이 사용합니다:
=IMPORTRANGE("https://docs.google.com/spreadsheets/d/1234567890abcdefg", "Sheet1!A1:C10")
또는
=IMPORTRANGE("1234567890abcdefg", "Sheet1!A1:C10")
위의 함수를 입력하면 현재 시트에 “Sheet1” 시트의 A1:C10 범위의 데이터가 자동으로 가져와집니다. 이때, 원본 스프레드시트에 대한 액세스 권한이 필요하며, 가져오려는 데이터가 있는 시트가 공개되어 있지 않다면, 해당 스프레드시트의 소유자가 액세스 권한을 부여해야 합니다.
IMPORTRANGE 함수는 다른 시트의 데이터를 가져올 때 유용하며, 가져온 데이터는 일반적인 데이터와 동일하게 사용할 수 있습니다.