목차
VBA 를 사용하여 Excel에서 정렬하려면 Range.Sort 방법을 적용해야 합니다. 이 기사에서는 VBA .
<1의 Range.Sort 메서드를 사용하여 Excel에서 열을 정렬 하는 방법을 보여줍니다>통합 문서 다운로드
여기에서 무료 연습용 Excel 통합 문서를 다운로드할 수 있습니다.
VBA.xlsm으로 열 정렬
Excel VBA의 Range.Sort 메서드
Range.Sort VBA 의 메서드는 Excel의 값 범위를 정렬합니다. 여기서 Range 는 오름차순 또는 내림차순으로 정렬하려는 셀의 범위를 지정하는 개체 변수입니다.
다음은 알아야 할 매개변수입니다.
매개변수 | 필수/선택 | 데이터 유형 | 설명 |
---|---|---|---|
키 | 선택 | 변형 | 값이 있는 범위 또는 열을 지정합니다. 정렬됩니다. |
순서 | 옵션 | XlSortOrder | 정렬이 수행되는 순서를 지정합니다.
|
헤더 | 옵션 | XlYesNoGuess | 첫 번째 행에 헤더가 포함되는지 여부를 지정합니다. .
|
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 에서 정렬합니다. 이 기사가 귀하에게 많은 도움이 되었기를 바랍니다. 주제와 관련하여 질문이 있으시면 언제든지 문의하십시오.