Excel에서 열을 정렬하는 VBA(4가지 방법)

  • 이 공유
Hugh West

VBA 를 사용하여 Excel에서 정렬하려면 Range.Sort 방법을 적용해야 합니다. 이 기사에서는 VBA .

<1의 Range.Sort 메서드를 사용하여 Excel에서 열을 정렬 하는 방법을 보여줍니다>통합 문서 다운로드

여기에서 무료 연습용 Excel 통합 문서를 다운로드할 수 있습니다.

VBA.xlsm으로 열 정렬

Excel VBA의 Range.Sort 메서드

Range.Sort VBA 의 메서드는 Excel의 값 범위를 정렬합니다. 여기서 Range 오름차순 또는 내림차순으로 정렬하려는 셀의 범위를 지정하는 개체 변수입니다.

다음은 알아야 할 매개변수입니다.

매개변수 필수/선택 데이터 유형 설명
선택 변형 값이 있는 범위 또는 열을 지정합니다. 정렬됩니다.
순서 옵션 XlSortOrder 정렬이 수행되는 순서를 지정합니다.
  • xlAscending = 오름차순으로 정렬합니다.
  • xlDescending = 내림차순으로 정렬합니다.
헤더 옵션 XlYesNoGuess 첫 번째 행에 헤더가 포함되는지 여부를 지정합니다. .
  • xlNo = 열에 헤더가 없는 경우; 기본값.
  • xl예 = 언제열에 헤더가 있습니다.
  • xlGuess = Excel에서 헤더를 결정하도록 합니다.

VBA를 구현하여 Excel에서 열을 정렬하는 4가지 방법

이 섹션에서는 헤더가 있거나 없는 단일 열을 정렬하는 방법 , 여러 열을 헤더 없이 열의 헤더를 더블클릭하여 정렬하는 방법 Excel.

1. VBA를 포함하여 Excel에서 머리글 없이 단일 열 정렬

VBA 코드를 사용하여 Excel 워크시트에서 단일 열 을 정렬하려면 다음을 따르십시오. 아래 단계를 따르십시오.

VBA 코드로 정렬할 열입니다.

단계:

  • 키보드에서 Alt + F11 을 누르거나 개발자 -> 탭으로 이동합니다. Visual Basic Visual Basic Editor 를 엽니다.

  • 팝업 코드 창에서 메뉴 표시줄에서 , 삽입 -> Module .

  • 다음 코드를 복사하여 코드 창에 붙여넣습니다.
1865

귀하의 코드 이제 실행할 준비가 되었습니다.

여기

  • Key1:=Range(“B5”) → 지정된 B5 정렬할 열을 코드에 알립니다.
  • Order1:=xlAscending → 순서를 xlAscending 로 지정하여 열을 오름차순으로 정렬합니다. 열을 내림차순으로 정렬하려면 대신 xlDescending 이라고 씁니다.
  • Header:= xlNo →열에 머리글이 없으므로 xlNo 옵션으로 지정했습니다.

  • F5를 누르십시오. 키보드 또는 메뉴 표시줄에서 실행 -> Sub/UserForm 을 실행합니다. 하위 메뉴 표시줄에서 작은 재생 아이콘 을 클릭하여 매크로를 실행할 수도 있습니다.

이제 열이 오름차순으로 정렬됩니다 .

여기서 데이터 범위를 수동으로 Range(“B5:B15” ) .

값을 추가하거나 삭제하여 데이터를 변경하려는 경우 데이터세트의 셀을 기반으로 자동으로 업데이트되는 다음 코드를 구현할 수 있습니다.

9306

대신 Range(“B5:B15”) 로 범위를 수동으로 정의하는 경우 Range( “B5”, Range(“B5”). End(xlDown)) .

마지막 연속으로 채워진 셀을 기준으로 열을 정렬합니다. 빈 셀이 있는 경우 데이터는 첫 번째 빈 셀까지만 고려됩니다.

자세히 알아보기: Excel에서 테이블을 정렬하는 VBA(4가지 방법)

2. 머리글이 있는 단일 열을 정렬하기 위해 VBA 매크로 삽입

이전 섹션에서는 머리글이 없는 단일 열의 데이터 세트가 있었지만 이제 a 헤더가 있는 열 .

이번에는 VBA 매크로 .

<1로 정렬하는 방법을 알아보겠습니다>단계:

  • 이전과 같은 방법으로 Visual Basic Editor 를 엽니다. 개발자 탭에서 코드 창에 모듈 삽입 합니다.
  • 코드 창에서 다음 코드를 복사하여 붙여넣습니다.
1681

이제 코드를 실행할 준비가 되었습니다.

여기

  • Key1:=Range(“ B5”) B5 를 지정하여 정렬할 열을 코드에 알립니다.
  • Order1:=xlDescending → 이번에는 열을 정렬합니다. 내림차순이므로 순서를 xlDescending 로 지정했습니다.
  • Header:= xlYes → 이번에는 열에 헤더가 있으므로 xlYes로 지정했습니다. 옵션.

  • 이 코드를 실행 하면 헤더가 내림차순으로 정렬된 열이 표시됩니다. .

자세히 보기: Excel에서 VBA로 ListBox를 정렬하는 방법(완전한 안내서)

유사 읽기:

  • 엑셀에서 IP 주소를 정렬하는 방법(6가지 방법)
  • [해결!] Excel 정렬이 작동하지 않음(2 솔루션)
  • 엑셀에 정렬 버튼을 추가하는 방법(7가지 방법)
  • Sort Rang e Excel에서 VBA 사용(예제 6개)
  • Excel에서 이름으로 정렬하는 방법(예제 3개)

3. 머리글이 있거나 없는 여러 열을 정렬하는 VBA 매크로

또한 VBA 코드를 사용하여 데이터 세트의 여러 열을 정렬할 수 있습니다.

단계:

  • 이전에 표시된 대로 개발자 탭에서 Visual Basic Editor 를 열고 삽입 모듈 코드 창에서.
  • 코드 창에서 다음 코드를 복사하여 붙여넣으십시오.
1116

이제 코드를 실행할 준비가 되었습니다.

여기,

.SortFields.Add Key:=Range(“B4”), 순서:=xlAscending

.SortFields.Add Key:=Range(“C4 ”), Order:=xlAscending

이 두 줄로 셀 B4 C4 를 정의하여 오름차순 으로 .

데이터세트에 헤더가 있으므로 Header = xlYes 를 지정했습니다. 그렇지 않으면 Header = 코드 내부의 xlNo .

  • Run 이 코드를 사용하면 헤더가 오름차순으로 정렬된 열을 얻을 수 있습니다. .

4. Excel에서 헤더 더블 클릭으로 데이터 정렬 매크로

헤더 더블 클릭 만으로 데이터를 쉽게 정렬하려면 VBA 코드.

단계:

  • 시트 탭 을 마우스 오른쪽 버튼으로 클릭 .
  • 나타나는 옵션 목록에서 코드 보기 를 클릭하세요.
  • 코드 창이 뜨면 아래 코드를 복사해서 붙여넣으세요.
5140
  • 저장 코드.

  • 이제 관심 있는 워크시트로 돌아가서 헤더를 두 번 클릭하면 열이 재구성되는 것을 볼 수 있습니다.

자세히 알아보기: 데이터 정렬 및 필터링 방법 Excel(완전한 가이드라인)

기억할 사항

  • 이름이 지정된 범위를 만들고 내부에 셀 참조 범위를 전달할 때 대신 사용할 수 있습니다. 정렬 방법. 예를 들어 A1:A10 범위를 정렬하려는 경우 코드 내에서 매번 전달하는 대신 " SortRange<40"과 같이 명명된 범위를 만들 수 있습니다> " 및 Range("SortRange") 와 같은 Range.Sort 메서드와 함께 사용합니다.
  • 데이터세트에 헤더가 있는지 확실하지 않은 경우 여부는 xlGuess 매개변수를 사용하여 시스템이 결정하도록 할 수 있습니다.

결론

이 문서에서는 을 Excel VBA 에서 정렬합니다. 이 기사가 귀하에게 많은 도움이 되었기를 바랍니다. 주제와 관련하여 질문이 있으시면 언제든지 문의하십시오.

Hugh West는 업계에서 10년 이상의 경험을 가진 고도로 숙련된 Excel 트레이너이자 분석가입니다. 그는 회계 및 재무 학사 학위와 경영학 석사 학위를 보유하고 있습니다. Hugh는 교육에 대한 열정을 가지고 있으며 따라하기 쉽고 이해하기 쉬운 독특한 교수법을 개발했습니다. Excel에 대한 그의 전문 지식은 전 세계 수천 명의 학생과 전문가가 자신의 기술을 향상시키고 경력에서 탁월하도록 도왔습니다. Hugh는 자신의 블로그를 통해 자신의 지식을 전 세계와 공유하고 개인과 기업이 잠재력을 최대한 발휘할 수 있도록 무료 Excel 자습서 및 온라인 교육을 제공합니다.