본문 바로가기
VBA/엑사남_기초방

[기초방] VBA 100제 #40 [ 가로정렬 ]

by 일등미노왕국 2023. 3. 15.

이번 문제는 이렇다.

알파벳과 숫자가 섞여있는 것에 알파벳을 삭제 후 가로로 정렬을 해야한다.

 

2007년 엑셀 이후 버전에서는 가로정렬이 가능하다.

위의 코드를 한줄로 표현하면 이렇다

rngA.Sort rngA.Cells(1), 1, Orientation:=xlLeftToRight

행의 첫 영역을 key로 하여 올림차순으로 왼쪽에서 오른쪽 정렬을 하는 코드이다..

꼭 가져가기 바란다.

더보기
Sub 기초방40()

    Dim rngAll As Range: Set rngAll = [c5:l20]
    Dim rngA As Range
    
    rngAll.FormatConditions.Delete                              '= 기존 조건부서식 삭제
    Sheets("문제").[c5:l20].Copy Sheets("결과").[c5]            '= 문제 복사
    
    rngAll.SpecialCells(2, 2).Delete 1                          '= 문제영역에서 문자만 잡은후 지우고 sheft:=xlleft해라

    For Each rngA In rngAll.SpecialCells(2).Rows                '= 전체영역중에서 데이터가 있는 행들을 순환해라
    
        rngA.Select                                             '= 딜레이를 위해서 선택해라
        rngA.Sort rngA.Cells(1), 1, Orientation:=xlLeftToRight  '= 가로 정렬을 오름차순으로 해라
        rngA.FormatConditions.AddColorScale ColorScaleType:=3   '= 조건부 서식
       
    Next rngA

End Sub

 

기초방40.xlsm
0.02MB

댓글