|
|
|
|
|
|
===========================================
추가 보충: For Each 반복문을 활용하는 방법
-------------------------------------------
그런데, Intersect 함수를 활용하는 방법은
조사해야 할 대상 범위가 넓어지는 경우 즉,
For 루프의 반복 변수 r의 범위가 커지거나
또는 더 나아가 c 까지도 일정 범위를 조사해야 하는 등으로
반복이 많아지게 되면 상당히 효율이 떨어질 수 있습니다.
그래서 또 하나의 해결 방법으로
이번에는 Target에 소속된 각각의 셀을 하나 하나
차례대로 모두 조사해 보는 방법을 생각할 수 있습니다.
이 경우에 유용한 구문이 For Each 반복문이지요.
다음 코드를 보시겠습니다.
(전체적으로는 위의 첫 번째 코드를 약간 변형한 것입니다)
------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cc As Range
Dim r As Long
Application.EnableEvents = False
For Each cc in Target
' Taget 내에 포함된 모든 셀에 대해 각각 한 셀씩 반복함
If cc.Column = 6 Then
r = cc.Row
If r >= 4 And r <= 8 Then _
Cells(r, 7).ClearContents
End If
Next cc
Application.EnableEvents = True
End Sub
------------------------------------------------------
실제로 값이 바뀐 셀들에 대해서만 반복 조사하여 기능을 수행하므로
좀 더 효율적일 수 있습니다. |
|
[불량 게시물 신고] |
|
|
|
작성일 : 2018-03-30(09:54)
최종수정일 : 2018-03-30(20:42) |
|
|
|
|