Vba: 여러 열을 기준으로 시트를 정렬하는 방법


다음 기본 구문을 사용하여 VBA를 사용하여 Excel 시트를 여러 열로 정렬할 수 있습니다.

 Sub SortMultipleColumns()
    Range(" A1:B11 ").Sort Key1:=Range(" A1 "), Order1:=xlAscending, _
                         Key2:=Range(" B1 "), Order2:=xlDescending, _
                         Header:=xlYes
End Sub

이 특정 예에서는 A1:B11 범위의 셀을 먼저 A열의 값을 기준으로 오름차순으로 정렬한 다음 B열의 값을 기준으로 내림차순으로 정렬합니다.

Header:=xlYes 는 첫 번째 줄이 머리글 줄로 처리되어야 함을 지정합니다.

다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.

예: VBA를 사용하여 여러 열로 Excel 시트 정렬

다양한 농구 선수에 대한 정보가 포함된 다음과 같은 데이터 세트가 Excel에 있다고 가정해 보겠습니다.

다음과 같은 방식으로 데이터 세트를 정렬한다고 가정합니다.

  • 먼저 Team 열의 값을 오름차순(A~Z)으로 정렬합니다.
  • 다음으로 Points 열의 값을 내림차순(큰 것부터 작은 것까지)으로 정렬합니다.

이를 위해 다음 매크로를 생성할 수 있습니다:

 Sub SortMultipleColumns()
    Range(" A1:B11 ").Sort Key1:=Range(" A1 "), Order1:=xlAscending, _
                         Key2:=Range(" B1 "), Order2:=xlDescending, _
                         Header:=xlYes
End Sub

이 매크로를 실행하면 다음과 같은 출력이 나타납니다.

행은 이제 팀 이름을 기준으로 오름차순으로, 점수를 기준으로 내림차순으로 정렬됩니다.

참고 #1 : 이 예에서는 두 개의 열을 기준으로 정렬했습니다. 그러나 더 많은 열을 정렬하려는 만큼 많은 키를 지정할 수 있습니다.

참고 #2 : 여기에서 VBA 정렬 방법에 대한 전체 문서를 찾을 수 있습니다.

추가 리소스

다음 자습서에서는 VBA에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

VBA: AVERAGEIF 및 AVERAGEIFS 함수 작성 방법
VBA: SUMIF 및 SUMIFS 함수 작성 방법
VBA: COUNTIF 및 COUNTIFS 함수 작성 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다