vba [vba] Sort(내림차순, 오름차순) 기본 코드 (VBA 매크로)
페이지 정보
본문
(사용자에게 정보를 주기위해 Macro는 다양한 옵션 또는 인수(argument)들을 저장한다. 하지만 특정 기능은 Macro기록중 일부만 사용해도 그 기능을 충족한다.)
Sort 이전 오른차순 Sort 이후
자동저장으로 정렬(Sort)을 할 경우 긴 식이 저장됨. 하지만 기본 기능은 다음 한 줄이면 된다.
Sub OneColumnSort()
[A2:D18].Sort Key1:=Range("A2"), Order1:=xlAscending
'[A2:D18].Sort [A2], 1 '오름차순
'[A2:D18].Sort [A2], 2 '내림차순
'ActiveSheet.Sort.Orientation = xlLeftToRight '좌에서 우(즉 행방향)로 정렬할 경우 사용
End Sub
2개 이상의 열을 정렬할 때 아래 참조.
With Range("A1").CurrentRegion
.Sort key1:=.Cells(1, 1), key2:=.Cells(1, 2), key3:=.Cells(1, 3), Header:=xlYes
End With
또는
With Range("A1").CurrentRegion
.Sort key1:=.Cells(1, 1), order1:=1, _
key2:=.Cells(1, 2), order2:=0, _
key3:=.Cells(1, 3), order3:=1, _
Header:=xlYes
End With
또는
With ActiveSheet.Sort
.SortFields.Clear
.SortFields.Add Key:=[A2], Order:=1 'A열 기준 정렬
.SortFields.Add Key:=[B2], Order:=1 'B열 기준 정렬
.SetRange ActiveSheet.UsedRange '정렬할 영역 지정
.Header = xlYes '머릿말 있음
.Apply '정렬 실행
End With
출처 ::: http://blog.naver.com/rosa0189/60132769488
매크로 실행 전...
매크로 실행 후...
왼쪽에서 오른쪽으로 오름차순 정렬
With ActiveSheet.Sort
.SortFields.Clear
.SortFields.Add Key:=[I29].Offset(n, 1).Resize(, 99) '// , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
.SetRange [I29].Offset(n, 1).Resize(, 99)
' .Header = xlGuess
' .MatchCase = False
.Orientation = xlLeftToRight
' .SortMethod = xlPinYin
.Apply
End With
- 이전글[vb6.0/vba] 문자형(String) 배열 정렬(Sort) 함수 20.05.02
- 다음글[vba] 오름차순 정렬 예제/[B4].SpecialCells(5).Offset(1).Sort [B5], 1 20.05.02
댓글목록
등록된 댓글이 없습니다.