Excel & IT Info

아이엑셀러 닷컴, 엑셀러TV

Excel

Excel에서 SORT와 SORTBY: 어떤 것을 사용해야 할까요?

권현욱(엑셀러) 2026. 2. 20. 17:00
반응형

들어가기 전에

Excel의 SORT나 SORTBY 함수를 사용하면 원본 데이터를 그대로 유지하면서 데이터에서 특정 행이나 열을 추출하여 원하는 순서로 정렬할 수 있습니다. 두 함수의 작동 방식은 유사하지만, 어떤 함수를 사용할지 결정할 때 알아두어야 할 주요 차이점이 있습니다. 함수 사용 구문과 사용 방법에 대해 소개합니다.

권현욱(엑셀러) | 아이엑셀러 닷컴 대표 · Microsoft MVP · 엑셀 솔루션 프로바이더 · 작가

아이엑셀러


이 글은 아래 기사 내용을 토대로 작성되었습니다만, 필자의 개인 의견이나 추가 자료들이 다수 포함되어 있습니다.

  • 원문: SORT vs. SORTBY in Microsoft Excel: Which Should You Use?
  • URL: https://www.howtogeek.com/microsoft-excel-sort-vs-sortby-which-should-you-use/

SORT 및 SORTBY 구문

Excel에서 SORT 및 SORTBY 함수 의 다양한 동작을 살펴보기에 앞서, 각 함수의 구문에 대한 간략한 개요와 각 함수의 간단한 사용 예를 살펴보겠습니다.

[참고] 이 가이드의 모든 예제에서 원본 데이터는 Excel 표 형식으로 지정되어 있습니다 . 이는 SORT 함수와 SORTBY 함수 모두 원본 데이터가 이러한 방식으로 구조화되어 있을 때 가장 효과적으로 작동하기 때문입니다. 따라서 모든 수식은 구조화된 참조를 사용합니다 . 일반 범위에 동일한 원칙을 적용하려면 직접 셀 참조를 사용하세요.


Excel의 SORT 함수에는 4개의 인수가 있습니다. 하나는 필수이고 3개는 선택 사항입니다.

=SORT(a, b, c, d)

 

  • a (필수): 정렬하려는 열이나 행을 포함하는 배열(전체 테이블 또는 테이블의 일부)
  • b (선택 사항): 정렬할 열 또는 행을 나타내는 인덱스 번호
  • c (선택 사항): 정렬 순서를 결정하는 숫자(1: 오름차순, -1: 내림차순)
  • d (선택 사항): 정렬 방향을 나타내는 부울 값(FALSE: 행을 기준으로 세로 정렬, TRUE: 열을 기준으로 가로 정렬)

 

인수 b를 생략하면 첫 번째 행 또는 열이 반환됩니다. 인수 c를 생략하면 Excel은 오름차순으로 정렬합니다. 인수 d를 생략하면 데이터는 행을 기준으로 세로로 정렬됩니다. 인수 d를 사용하는 대신 데이터를 수평으로 정렬해야 하는 경우 행을 열로, 열을 행으로 바꾸는 것을 고려하세요.

 

이 예에서는 다음 수식을 입력합니다.

=SORT(T_Scores, 5, -1)

 

전체 T_Scores 테이블을 총 열(5)을 기준으로 내림차순(-1)으로 추출하고 정렬합니다.

 

이미지: howtogeek

 

SORT 또는 SORTBY 함수를 사용하든, 정렬 과정에서 테이블의 열 머리글이 데이터 행으로 간주되지 않도록 하려면 인수 a에 머리글 행 아래의 행만 포함되도록 해야 합니다 . 그런 다음, 결과 바로 위에 있는 열 머리글을 직접 입력하거나 다음과 같은 수식을 사용하여 복제합니다.

 

반면, SORTBY 함수에는 필수 인수가 두 개 있으며, 사용하는 선택 인수의 수는 데이터를 정렬할 행 또는 열의 수에 따라 달라집니다.

=SORTBY(a, b¹, b², c¹, c², ...)

 

  • a (필수): 정렬하려는 열이나 행을 포함하는 배열(전체 테이블 또는 테이블의 일부)
  • b¹ (필수): 정렬할 첫 번째 배열
  • b² (옵션): 첫 번째 정렬 배열의 정렬 순서를 결정하는 숫자(1: 오름차순, -1: 내림차순)
  • c ¹ (옵션)은 정렬 기준이 되는 두 번째 배열
  • c² (옵션)은 두 번째 정렬 순서 번호

 

즉, b¹ 과 b² 는 첫 번째 배열 순서 쌍이고, c¹ 과 c² 는 두 번째 배열 순서 쌍이며, 이러한 쌍의 최대 개수는 정렬하려는 데이터 세트의 행 또는 열 개수에 따라 결정됩니다.

정렬 기준 인수(b¹)가 하나뿐인 경우 정렬 순서 인수( b² ) 를 생략할 수 있으며 , 이 경우 결과는 기본적으로 오름차순으로 정렬됩니다. 그러나 정렬 기준 인수가 두 개 이상인 경우 모든 인수에 정렬 순서 인수를 함께 사용해야 합니다. 데이터를 세로로 정렬하는 경우 전체 배열과 정렬 기준 배열에는 같은 수의 행이 있어야 하고, 데이터를 가로로 정렬하는 경우 같은 수의 열이 있어야 합니다.

 

예를 들어, 다음 수식을 입력합니다.

=SORTBY(T_Scores, T_Scores[Total], -1)

 

전체 T_Scores 테이블을 추출하여 내림차순(-1)으로 총 열(T_Scores[Total])을 기준으로 정렬합니다.

 

이미지: howtogeek

 

다양한 버전의 Excel과의 호환성

Windows와 Mac에서 SORT 및 SORTBY 함수는 2021년 이후 출시된 Excel 독립 실행형 버전과 Excel for Microsoft 365에서 모두 지원됩니다. 무료 온라인 버전인 Excel for the web 에서도 이러한 함수를 사용할 수 있습니다. 또는 Excel 모바일 및 태블릿 앱 이나 Microsoft 365 Copilot 모바일 앱을 사용하는 경우에도 SORT 및 SORTBY 함수를 사용할 수 있습니다.

 

정렬 기준 배열 식별

필자는 원본 데이터에 열이 추가되거나 제거될 때 SORTBY 함수를 사용하는 것보다 SORTBY 함수를 사용하는 것을 선호합니다. 여기서는 T_Scores 테이블을 추출하고 SORTBY 함수를 사용하여 Total 열을 기준으로 내림차순으로 정렬한 후, 원본 데이터 세트에 열을 삽입했습니다. SORTBY 함수는 선택한 배열이나 열 이름으로 정렬 기준 열을 식별하므로 결과는 여전히 Total 열을 기준으로 정렬됩니다.

 

이미지: howtogeek

 

하지만 SORT 함수를 사용한 후 원본 데이터에 열을 삽입하면 정렬 기준 인수의 인덱스 번호가 원본 데이터 집합의 구조 변경 사항을 인식하지 못합니다. 즉, 합계 열은 이제 5번째 열이지만 수식은 여전히 ​​4번째 열을 참조합니다. 따라서 수식을 수동으로 업데이트하거나 이 프로세스를 자동화하는 방법을 찾아야 합니다.

 

이미지: howtogeek

 

따라서 데이터 형태가 변경될 것으로 예상하는 경우 장기적으로는 SORTBY 함수가 더 나은 옵션이 될 것입니다.

단일 열 추출 및 정렬

SORT 및 SORTBY 함수의 가장 기본적인 용도는 데이터 세트에서 단일 배열을 추출하고 정렬하는 것입니다. 현재 용량 열에 따라 가장 큰 것부터 가장 작은 것까지 정렬되어 있는 T_PL 테이블에서 팀을 추출하여 알파벳순으로 정렬하고 싶다고 가정해 보겠습니다.

 

이미지: howtogeek

 

SORT 함수를 사용하여 이 작업을 수행하려면 다음을 입력해야 합니다.

=SORT(T_PL[Team])

 

이 함수는 첫 번째 인수만 주어지면 자동으로 데이터를 첫 번째 열부터 오름차순(알파벳순)으로 정렬하므로 수식이 간단하고 좋습니다.

 

이미지: howtogeek

 

반면, SORTBY 함수를 사용하여 동일한 작업을 수행하려면 다음 수식을 입력합니다.

=SORTBY(T_PL[Team], T_PL[Team])

 

이 함수를 사용하려면 배열과 정렬 기준 배열을 모두 입력해야 합니다.

 

이미지: howtogeek

 

따라서 데이터 세트에서 단일 배열을 추출하고 정렬할 때 SORT 함수는 SORTBY 함수보다 훨씬 더 효율적이며, 특히 결과를 오름차순으로 정렬하려는 경우에 더욱 그렇습니다.

여러 레벨로 데이터 추출 및 정렬

SORT 함수와 SORTBY 함수의 가장 큰 차이점 중 하나는 여러 변수를 기준으로 데이터를 추출하고 정렬하는 데 사용해야 하는 방법입니다.

이 예에서는 T_Scores 표를 추출하여 총점 열에 따라 정렬한다고 가정해 보겠습니다. 이 열의 두 값이 같으면(이 경우 Tom과 Dave의 총점), 플레이어 이름에 따라 데이터를 알파벳순으로 정렬하려고 합니다.

 

이미지: howtogeek

 

다중 레벨 정렬에 맞춰 특별히 설계된 구문을 가진 SORTBY 함수를 사용하여 이를 달성하려면 다음 수식을 입력해야 합니다.

=SORTBY(T_Scores, T_Scores[Total], -1, T_Scores[Name], 1)

 

  • T_Scores는 추출하고 정렬하려는 테이블의 이름
  • T_Scores[Total], -1: Excel에서 배열을 정렬할 기본 열이 내림차순으로 Total 열임을 알려줌
  • T_Scores[Name], 1: Excel에 배열을 정렬할 보조 열이 오름차순(알파벳순)으로 정렬된 Name 열임을 알려줌

 

이미지: howtogeek

 

추출된 데이터가 총계 열에 따라 정렬되어 있고, 총계가 같은 Dave와 Tom은 알파벳순으로 정렬되어 있는 점에 유의하세요.

반면, SORT 함수를 사용하여 동일한 결과를 얻으려고 하면, 표면적으로는 정렬 배열과 정렬 기준 인덱스 번호 하나만 입력할 수 있기 때문에 난관에 부딪히게 됩니다. 그러나 배열 상수를 사용하면 이 난관을 극복할 수 있습니다.

=SORT(T_Scores, {4,1}, {-1,1})

 

  • T_Scores: 추출하고 정렬하려는 테이블의 이름
  • {4,1}: Excel에 첫 번째 열로 정렬하기 전에 먼저 네 번째 열로 데이터를 정렬하라고 알려줌
  • {-1,1}: Excel에서 네 번째 열은 내림차순, 첫 번째 열은 오름차순으로 정렬되어야 한다는 것을 알려줌

 

이미지: howtogeek

 

위의 SORTBY 예제와 마찬가지로 결과는 합계 열을 기준으로 데이터를 추출하고 정렬하며, 값이 같으면 데이터는 이름 열을 기준으로도 정렬됩니다.

 

전반적으로 SORTBY 함수와 SORT 함수는 둘 이상의 수준에서 데이터를 정렬할 수 있으며, 두 함수 모두 장점이 있습니다. 다른 사람들과 통합 문서를 공유할 계획이라면, 배열 상수 없이 기존 수식 구문을 사용하는 데 더 익숙할 수 있으므로 SORTBY 함수를 사용하는 것이 좋습니다. 반면, 배열 상수를 포함하는 SORT 수식은 훨씬 짧기 때문에 시간을 절약하고 싶다면 이 방법이 가장 좋습니다.

하지만 앞서 설명했듯이, SORTBY 함수는 열 인덱스 번호에 의존하지 않기 때문에 원본 데이터에 새 열이 추가되는 경우 더 효과적으로 처리할 수 있습니다. 따라서 어떤 함수를 사용할지 선택할 때 이 점을 항상 염두에 두어야 합니다.

 

결과 동작

SORT 및 SORTBY 함수의 장점은 소스 데이터의 값이 변경되면 정렬된 결과에 반영된다는 점입니다. 또한 SORT 및 SORTBY는 동적 배열 함수이므로, 소스 데이터가 형식화된 Excel 테이블에 있을 경우 행을 추가하거나 삭제하면 결과도 확장되거나 축소됩니다.

함수가 동적 배열을 생성한다는 것은 (1) 공식을 입력한 셀에서 결과물이 인접한 셀로 확장되고, (2) 결과물의 어떤 셀을 선택할 때 일시적인 파란색 테두리가 나타나는 경우입니다. 여기서는 SORTBY 공식이 셀 F2에 입력되었지만, 결과물은 F2셀에서 I5셀까지 확장됩니다.

 

이미지: howtogeek

 

하지만 이러한 역동성에는 큰 단점이 있습니다. 서식이 지정된 Excel 표에서는 SORT 및 SORTBY 함수를 사용할 수 없습니다. Excel 표는 동적 배열 수식과 호환되지 않기 때문입니다 . 두 Excel 기능은 모두 자동으로 확장 및 축소되도록 설계되었기 때문입니다.

두 함수의 정렬 배열 인수가 다른 Excel 통합 문서의 데이터 세트를 참조하는 경우에도 문제가 발생할 수 있습니다. 특히, 외부 원본을 참조하는 동적 배열 함수는 두 통합 문서가 모두 열려 있을 때만 작동합니다. 따라서 원본 통합 문서를 닫으면 연결된 모든 동적 배열 수식을 새로 고칠 때 #REF! 오류가 반환됩니다.

요약: SORT와 SORTBY 중 어떤 것을 사용해야 할까요?

SORT 함수를 사용할지 아니면 SORTBY 함수를 사용할지는 원본 데이터 세트에 열을 삽입할지 여부, 적용할 정렬 수준 수, 통합 문서를 다른 사람과 공유할지 여부 등 여러 요인에 따라 달라집니다.

주요 유사점과 차이점을 요약하면 다음과 같습니다.

특징 SORT SORTBY
Excel 버전 호환성 Excel 2016 이상, Microsoft 365용 Excel, 웹용 Excel, 모바일 및 태블릿용 Excel Excel 2016 이상, Microsoft 365용 Excel, 웹용 Excel, 모바일 및 태블릿용 Excel
최소 필수 인수 1 2
기본 정렬 순서 오름차순 오름차순
인수 유형별 정렬 인덱스 번호 선택된 배열 또는 테이블 열 머리글
삽입 또는 삭제된 열에 대한 적응성 정렬 기준 배열 인덱스 번호는 구조적 변경에 적응하지 않음 정렬 기준 배열은 동일하게 유지
정렬 방향 수직 또는 수평 수직 또는 수평
단일 배열 추출 및 정렬 단일 인수로 작업 가능 최소 두 개의 인수가 필요
여러 배열로 추출 및 정렬 배열 상수 필요 기본적으로 네이티브로 작동
원동력 동적 배열 생성 동적 배열 생성
테이블 호환성 Excel 표에서는 사용할 수 없음 Excel 표에서는 사용할 수 없음
워크북 간 호환성 두 통합 문서가 모두 열려 있는 경우 작동 두 통합 문서가 모두 열려 있는 경우 작동

 

마치며

데이터에서 인접하지 않은 배열을 추출하고 정렬하려면 SORT 또는 SORTBY 수식 내에 CHOOSECOLS 또는 CHOOSEROWS 함수를 중첩하세요. 또는 데이터세트에서 열을 동시에 추출, 필터링, 정렬하려면 FILTER 함수를 중첩하세요.