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

[기초방] VBA 100제 #11 [ 영역과 조건에 따른 숫자채우기 ]

by 일등미노왕국 2023. 1. 7.

첫번째 문제는 For each 움직임을 이해하기 위한 문제이다.

For  each는 좌에서 우로 위에서 아래도 이동하게 된다. For each 를 성애자로서 우리방 모두가 for each를 쓰도록 이런 문제를 계속내도록 해야겠다...ㅋㅋㅋ

For Each rngA In [c5:d14]                                  
    cnt= cnt+1
    rngA = cnt
Next rngA

두번째 문제는 ㄱ 자 형태로 숫자가 내려오는 문제이다.

이것의 진행은 영역에서 ㄱ 자 형태를 만든 후 숫자가 채워지면 안쪽으로 ㄱ 자형태를 이동하면서 +1 씩 카운팅되는 숫자들을 출력하면 된다.

Set rngQ = Intersect(Union(rngX.EntireRow, rngX.EntireColumn), rngAll)

이구문이 ㄱ 자 형태를 만드는 구문이다.

반복문을 따라 숫자가 모두 입력되면 For each를 빠져나오는데 그때 영역을 재설정하고 Do   반복문의 조건에 따라 다시 순환하거나 멈추게 된다.

Set rngQ = Intersect(rngQ.Offset(1, -1), rngAll)

머리가 뜨거워진걸 느꼈으면 좋겠다...그래야 알고리즘 문제를 더 낼 수 있으니....ㅋㅋㅋㅋ

기초방_11.xlsm
0.02MB

댓글