숫자 열 개수를 한 번에 정렬하는 방법

숫자 열 개수를 한 번에 정렬하는 방법

입출력

350개의 열이 있습니다. 아래는 모든 데이터의 하위 집합입니다.

Excel 스프레드시트의 샘플 데이터는 연도 및 월별 행으로 구분되고 구역별로 열로 표시됩니다.

저는 "가장 작은 것부터 큰 것까지 정렬" 도구를 사용했습니다. 하나의 열에 대해서만 결과를 제공합니다. 그렇지 않은 경우 첫 번째 열을 정렬할 수 있으며 다른 열은 첫 번째 열에 따라 변경됩니다. 하지만 모든 열 AZ를 개별적으로 정렬하고 싶습니다.

지역별로 데이터를 정렬하고 싶습니다.

답변1

1.정렬하려는 열을 선택합니다. 그런 다음 "가장 작은 것부터 큰 것까지 정렬"을 클릭하세요.

데이터 > 정렬 및 필터 > 내림차순 정렬

2."현재 선택으로 계속"을 선택합니다.

현재 선택을 계속합니다.

보시다시피 하나의 열만 정렬되었습니다.
하나의 열만 정렬했습니다.

나머지 349개 열에 대해 이 작업을 반복합니다. :)


한 번에 모두 수행하려면 다음을 수행하십시오.

  1. 정렬하려는 시트를 엽니다.

  2. Alt+를 사용하여 VBA 편집기를 엽니다 .F11

  3. 삽입 > 모듈

  4. 다음 코드를 붙여넣으세요.

하위 sort_columns_separately_AZ()
  Dim rngStart As 범위
  범위에 따른 희미한 rngHeaders
  범위로 희미한 c
  rngStart = ActiveSheet.Range("A2") 설정
  rngHeaders = ActiveSheet.Range(rngStart, rngStart.End(xlToRight)) 설정

  rngHeaders의 각 c에 대해
    ActiveSheet.Sort.SortFields.Clear
    ActiveSheet.Sort.SortFields.Add Key:=c, _
      SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    ActiveSheet.Sort 사용
      .SetRange ActiveSheet.Range(c, c.End(xlDown))
      .헤더 = xl예
      .MatchCase = 거짓
      .방향 = xlTopToBottom
      .SortMethod = xlPinYin
      .적용하다
  다음
서브 끝
  1. 코드에서 ActiveSheet.Range("A2")데이터 테이블이 시작되는 셀 주소로 변경합니다(예: ) ActiveSheet.Range("B5").
  2. 때리다F5

결과:
정렬 전과 정렬 후

참고: 데이터에 빈 셀이 있는 경우 빈 셀이 있는 열에서 올바르게 작동하려면 이 코드를 조정해야 합니다.

관련 정보