ⓒ 2025 AI교육연구회 withseok. All rights reserved. (위드석)
[블로그 글 내용 상업적 이용금지] 위드석홈 | 위드석개발 | AI교육연구회

 

A010

34행을 다음과 같이 작업한다.
A34 값 now
B34:AF34 : 연한색

 

 

A020

셀 C3:AF32 까지  모두 선택 후
  (셀 선택시 C3부터 드래그 , C3만 흰색으로 표시됨)
홈 - 조건부서식 - 규칙관리

 

A030

새규칙
-수식을 사용하여 서식을 지정할 셀 결정

=AND($A3<=C$33,C$34=1)

서식에서 셀배경 적당히 선택

 

A040

새로 만든 규칙을 위로 올리고
True일 경우 중지 체크
확인!!!

 

A050

아래와 같이 적당히 1을 몇군데 입력하여 확인한다.
이후 입력한 1을 모두 지운다.

 

A011

VBA 편집기를 연다. (단축키 Alt + F11키)
모듈에서 Sort 선택

다음 두 줄을 그림과 같이 추가

Range("C33").Offset(1, k - 1).Value = 1

Range("C33").Offset(1, k - 1).Value = ""

작동하는 셀의 아래 칸에 1을 입력하고 지우는 것을 반복하는 것이다.

 

A020

정확한 시각적 효과를 위해 다음과 같이 편집하면 
시각적 효과가 가장 정확하다.

Sub MD_Sort()

Do
    v_Ch_Num = 0
    For k = 1 To 29
        Range("C33").Offset(1, k - 1).Value = 1
        If Range("C33").Offset(, k - 1) > Range("C33").Offset(, k) Then '값비교
            'MsgBox Range("C33").Offset(, k - 1).Value
            'MsgBox Range("C33").Offset(, k).Value
            'MsgBox "앞에 수가 크다"
            v_val_temp1 = Range("C33").Offset(, k - 1).Value    '각각 변수에
            v_val_temp2 = Range("C33").Offset(, k).Value        '값을 저정함.
            'MsgBox (v_val_temp1 & "," & v_val_temp2)
            Range("C33").Offset(, k - 1) = v_val_temp2  '서로 값을 바꾸어
            Range("C33").Offset(1, k - 1).Value = ""
            Range("C33").Offset(, k) = v_val_temp1      '입력함
            Range("C33").Offset(1, k).Value = 1
            v_Ch_Num = v_Ch_Num + 1
            DoEvents
        Else
        End If
        Range("C33").Offset(1, k - 1).Value = ""
        Range("C33").Offset(1, k).Value = ""
    
    Next k
Loop Until v_Ch_Num = 0
MsgBox "성공!"

End Sub

A030

Fix 매크로에도 다음 내용을 추가한다.

Range("C34:AF34").Value = ""
파일 다운로드

 

정렬알고리즘(간단_현재칸표시)--2500810.0007.xlsm
0.02MB

320x100

+ Recent posts