엑셀에서 범위의 데이터를 정렬하려면 다음과 같이 리본메뉴 > 데이터 > "정렬" 기능을 이용하여 원본데이터 자체를 정렬했지만...
Office365버전부터 제공되는 SORT함수나 SORTBY함수를 이용하면 원본 데이터를 손대지 않고 별도의 범위에 정렬된 결과를 표시할 수 있다.
SORTBY함수는 SORT함수와 유사하나
- 출력결과에 포함되지 않은 범위를 정렬기준으로 설정할 수 있고,
- 여러 범위를 정렬기준으로 지정할 수 있는
장점이 있다.
※SORT함수는 다음 링크를 참조한다.
엑셀함수 SORT – 범위 또는 배열의 내용을 정렬하기
=SORTBY(array, by_array1, [sort_order1], [by_array2, sort_order2],…)
범위 또는 배열의 값을 기준으로 범위 또는 배열의 내용을 정렬한다.
인수 :
- array : 정렬할 범위 또는 배열
- by_array1 : 첫번째 정렬의 기준이 되는 배열 또는 범위
- sort_order1 : (생략가능) 첫번째 정렬순서(오름차순은 1(기본값), 내림차순의 경우 -1)
- by_array2 : (생략가능)두번째 정렬의 기준이 되는 배열 또는 범위
- sort_order2 : (생략가능) 두번째 정렬순서(오름차순은 1(기본값), 내림차순의 경우 -1)
사용예 :
1) 정렬기준을 포함하여 정렬범위 전체를 출력하기
다음과 같이 "거래처별 판매실적" 자료가 있다고 할 때 SORTBY 함수를 이용하여 "판매일자"별로 오름차순(빠른 날짜가 앞에, 늦은 날짜가 뒤에 옴)으로 정렬해보자.
SORTBY함수는 정렬의 결과를 원하는 범위에 표시해 주므로 아래와 같이 적당한 위치에 수식을 입력한다.
=SORTBY(B6:E13,B6:B13,1)
수식이 정상적으로 입력되었으면 다음과 같이 정렬 결과가 표시된다.
※ 주의 : 정렬된 결과를 범위로 가져오도록 지정했는데 가져올 범위에 이미 값이 있으면 다음과 같이 #SPILL! 오류가 발생하므로 결과를 가져올 범위가 비어 있어야 한다.
입력된 수식을 풀어보면 다음과 같다.
2) 출력결과에 포함되지 않은 범위를 정렬기준으로 지정하기
위의 예는 정렬의 기준이 되는 범위를 포함하여 전체 범위가 출력되었는데, 이번에는 출력결과에 포함되지 않는 범위인 "판매일자"를 정렬기준으로 지정하고 정렬결과를 출력해 보자.
SORTBY함수는 정렬의 결과를 원하는 범위에 표시해 주므로 아래와 같이 적당한 위치에 수식을 입력한다.
=SORTBY(C6:E13,B6:B13,1)
수식이 정상적으로 입력되었으면 다음과 같이 정렬 결과가 표시된다.
입력된 수식을 풀어보면 다음과 같다.
3) 여러 범위를 정렬기준으로 지정하기
마지막으로 여러 개의 범위를 정렬기준으로 지정하고 정렬결과를 출력해 보자.
아래와 같이 적당한 위치에 수식을 입력한다.
=SORTBY(B6:E13,B6:B13,1,C6:C13,1)
수식이 정상적으로 입력되었으면 다음과 같이 정렬 결과가 표시된다.
입력된 수식 풀어보면 다음과 같다.
출력된 결과를 확인해 보면 "판매일자"순으로 첫번째로 정렬이 되고, "거래처명"기준으로 두번째로 정렬이 된것을 알 수 있다.
[ 엑셀 찾기 및 참조영역 함수 목록 ]
- 엑셀함수 SORT - 범위 또는 배열의 내용을 정렬하기
- 엑셀함수 SORTBY - 범위의 값을 기준으로 범위의 내용을 정렬하기
- 엑셀함수 FILTER - 원하는 조건으로 데이터 조회(필터링)하기
- VLOOKUP의 단점을 해결한 XLOOKUP함수로 표에서 값찾기
- 엑셀함수 HLOOKUP - 표를 수평(가로)으로 따라가면서 값찾기
- 엑셀함수 HYPERLINK - 하이퍼링크 만들기
- 엑셀함수 ROWS - 범위나 배열의 행의 개수 구하기
- 엑셀함수 COLUMNS - 범위나 배열의 열의 개수 구하기
- 엑셀함수 AREAS - 참조영역내의 영역의 개수 구하기
- 엑셀함수 ADDRESS - 행,열 번호로 셀주소 표시하기
- 엑셀함수 TRANSPOSE - 행과 열을 바꾸기
- 엑셀함수 INDIRECT – 참조를 동적으로 바꾸기
- 엑셀함수 LOOKUP - 행 또는 열의 같은 위치에 있는 값 찾기
- 엑셀함수 OFFSET - 행열이동 후 참조구하기
- 엑셀함수 COLUMN - 열번호를 자동으로 매기기
- 엑셀함수 ROW - 행번호를 자동으로 매기기
- 엑셀함수 CHOOSE - 값목록에서 원하는 값 선택하기
- 엑셀함수 MATCH - 특정 범위에서 값의 위치 찾기
- 엑셀함수 INDEX - 특정 범위에서 행과 열을 이용하여 값 찾기
- 엑셀 VLOOKUP 함수로 표에서 값 찾기(간단 버전)
- 엑셀에서 값을 찾을 때 VLOOKUP, HLOOKUP 함수 사용하기
- VLOOKUP으로 안될때 INDEX,MATCH 사용하기
- INDEX, MATCH를 이용한 다중조건으로 값찾기