엑셀에서 금액을 계산하거나 데이터를 정리할 때, 수식 하나를 입력한 뒤 셀 아래로 자동채우기를 반복하는 방법을 사용하고 계셨나요? 특히 데이터 행이 수십, 수백 개라면 매번 같은 작업을 반복해야 해서 생각보다 많은 시간이 소요되므로, 이 기능 알아두면 정말 큰 도움 되실겁니다!👍
바로 '동적 배열' 기능인데요. 수식 하나만으로 여러 행의 결과를 한 번에 채우고, 데이터가 추가될 때마다 자동으로 업데이트되는 실시간 서식을 만들 수 있습니다. 오늘은 '#' 기호와 함께 활용하는 동적 배열의 실전 활용법을 단계별로 살펴보겠습니다.
- 먼저 '동적 배열'의 원리부터 살펴봅시다. 기존 엑셀에서는 수식 하나가 값 하나를 반환했습니다. 수량과 가격을 곱하는 수식을 입력하면 해당 셀에만 결과가 표시됐습니다.

- 하지만 '동적 배열'을 지원하는 최신 엑셀에서는 수식 하나가 여러 값을 한 번에 반환하고, 결과가 인접한 빈 셀로 자동으로 펼쳐집니다. 이 기능은 동적배열 또는 '분산(Spill)'이라고 부르기도 합니다.

- 동적 배열의 첫 번째 활용 예는 VLOOKUP 함수입니다. 예제 파일의 1번 시트에서 VLOOKUP 함수를 작성합니다. 반환할 열 번호 자리에 중괄호 "{}"로 여러 번호를 함께 묶어서 작성해보세요. 그러면 여러 필드를 한 번에 조회할 수 있습니다. 예를 들어 직원 정보에서 이름, 부서, 직급을 동시에 가져와야 할 때, VLOOKUP 수식을 여러 번 따로 입력하는 대신 열 번호를 중괄호로 묶어 한 번에 처리할 수 있습니다.

- 금액 계산에서도 동적 배열이 큰 역할을 합니다. 보통은 수량과 가격을 곱하는 수식을 한 셀에 입력하고, 아래 셀로 자동채우기를 해 왔을 텐데요. 이제는 수량 데이터가 담긴 범위 전체와 가격 데이터가 담긴 범위 전체를 통째로 곱하는 수식 하나만 입력하면 됩니다. 수식을 입력하는 순간 모든 행의 금액이 한 번에 채워지므로, 자동채우기를 반복할 필요가 없습니다.

- 동적 배열은 텍스트 처리에도 활용할 수 있습니다. 쉼표로 구분된 값이 하나의 셀에 있을 때, TEXTSPLIT 함수를 사용하면 각 항목이 자동으로 분리되어 여러 셀에 펼쳐집니다. 한 줄로 된 데이터가 있다면 TEXTSPLIT 함수 하나로 항목별로 나눌 수 있어, 기존의 텍스트 나누기 기능을 수동으로 실행하는 번거로움이 사라집니다. 분리된 결과도 동적 배열로 출력되어 자동으로 펼쳐집니다.
=TEXTSPLIT(B2,,",")

- 이제 '#' 기호의 활용법을 알아봅니다. 동적 배열 수식이 입력된 셀의 주소 뒤에 '#' 기호를 붙이면, 해당 수식이 출력한 전체 범위가 자동으로 선택됩니다. TEXTSPLIT 함수로 분리한 결과 범위를 다른 수식에서 참조할 때, 셀 주소 뒤에 '#'을 붙이기만 하면 펼쳐진 범위 전체가 자동으로 포함됩니다. 데이터가 늘거나 줄어도 '#' 기호가 범위를 자동으로 조정해 줍니다. 셀 주소 뒤에 # 기호를 붙이면 동적 배열 범위 전체가 자동으로 선택됩니다.

오빠두Tip : #기호를 활용한 동적 참조의 더 다양한 활용 예제는 이전 영상 강의에서 꼼꼼히 정리했으니 참고하세요!
- '#' 기호로 선택한 분리된 데이터를 이번에는 표로 만들어 봅니다. WRAPROWS 함수를 사용하면 '#' 기호로 참조한 범위를 원하는 열 수로 묶어 깔끔한 표 형태로 바꿀 수 있습니다. TEXTSPLIT으로 분리한 결과에 WRAPROWS를 더하면, 쉼표로 연결된 긴 데이터가 보기 좋은 표로 한 번에 변환됩니다. 모든 수식이 동적 배열로 연결되어 있으므로 원본 데이터가 바뀌면 표도 함께 바뀝니다.
=WRAPROWS(B9#,4)

- 마지막으로 완성된 서식에 새 데이터를 추가하면 표가 실시간으로 자동 업데이트됩니다. 원본 셀에 값을 추가하는 것만으로 TEXTSPLIT이 다시 분리하고, '#' 기호가 새 범위를 포함하고, WRAPROWS가 표를 다시 정리하는 과정이 자동으로 이루어지는 서식이 완성됩니다!👍
