본 강의에서는 엑셀 vba에서 셀을 오름차순 또는 내림차순으로 정렬하는 법을 다루겠습니다.

 

일단 기본적으로 Sort라는 함수를 사용합니다.

 

Sort의 인자로는 기본적으로 Key와 Order가 있습니다.

 

Key는 말 그대로 정렬의 기준을 정하는 것이고 값은 Cell 또는 Range 등이 들어갈 수 있습니다.

 

Order는 오름차순 또는 내림차순을 정할 수 있습니다. 오름차순은 "xlAscending", 내림차순은 "xlDescending" 입니다.

 

아래 예제를 통해 더 자세히 알아보겠습니다.

 

Sub Macro()
	Range("A1:A9").Sort Key1:=Cells(1,1), Order1:=xlAscending
End Sub

Key1값을 1행1열로 하였고 정렬은 오름차순인 xlAscending으로 설정하여 실행한 결과입니다.

 

Cells(1,1)이 아니라 Range("A1")으로 하여도 무방합니다.

 

여기서 Key의 변수 이름이 Key1로 뒤에 숫자가 붙는 이유는 Key값과 Order의 값은 3개까지 가능하며 Key1, Key2, Key3 로 사용할 수 있습니다. Order도 동일합니다.

 

아래 예제를 통해 여러개의 키의 값으로 정렬한걸 보여드리겠습니다.

 

Sub macro2()
	Range("A1:B20").Sort Key1:=Range("B1"), Order1:=xlAscending, Key2:=Range("A1"), Order2:=xlDescending
End Sub

우선 Range("A1:B20")으로 두개의 열을 포함시켜 줍니다. 이럴경우 한 개의 열을 기준으로 정렬하면 다른 열의 값들도 따라오게 됩니다.

 

첫번째 정렬기준은 알파벳 오름차순이고, 두번째 기준을 숫자의 내림차순입니다.

 

먼저 첫번째 기준대로 알파벳 오름차순이 된 후에, 같은 알파벳을 가진 범위안에서 숫자 내림차순이 됩니다.

 

이렇듯 여러개의 기준으로 정렬을 할 수 있습니다.

 

이것으로 Sort함수 사용법을 마치겠습니다.


WRITTEN BY
컴공학도

,