For ~ Next문
프로시저 내에서 특정 명령을 반복하기 위해서 사용하는 구문.
For 카운터 = 시작번호 to 끝번호 [Step 간격]
'실행명령
[Exit For]
Next [카운터]
- 카운터는 별도 Step을 정해주지 않으면 1씩 증가
1 2 3 4 5 6 7 8 9 10 11 12 13 | Sub 합계() Dim Sum As Integer Dim Counter As Integer Sum = 1 For Counter = 1 to 10 ' Counter 1부터 10까지 For문 순환 sum = sum + sum Next Counter MsgBox Sum End Sub | cs |
For Each ~ Next문
For~Next문과 비슷하지만 지정한 횟수를 반복하는게 아니라 컬렉션의 개체를 순환하거나 배열내 요소를 하나씩 순환하면서 명령 실행
Dim 개체변수 As 개체형식
For Each 개체변수 In 컬렉션
'실행명령
[Exit For]
Next [개체변수]
1 2 3 4 5 6 7 8 9 10 | Sub 시트이름() Dim WS As Worksheet For Each WS In Activeworkbook.Worksheets MsgBox WS.Name Next WS End Sub | cs |
시트 이름을 알려주는 팝업창이 하나씩 나타난다.
(시트가 3개라면 팝업창도 세번)
For Each ~ Next문을 이용해서 각각의 워크시트를 순환하면서 해당 시트의 데이터를 총괄 시트로 복사할 수 있다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | Sub 총괄계산() Dim WS As Worksheet Dim i As intger For Each WS In ThisWorkbook.Worksheets If WS.Name <> "총괄" Then Range("A" & i).Value = WS.Name Range("B" & i).Value = WS.Range("F20").Value '각 시트 F20에 있는 값을 총괄시트 B열에 저장 i=i+1 End If Next End Sub | cs |
'Excel > VBA 공부' 카테고리의 다른 글
얼렁뚱땅 엑셀 VBA] Range 개체 (0) | 2017.05.26 |
---|---|
얼렁뚱땅 엑셀 VBA] InputBox (6) | 2017.05.25 |
얼렁뚱땅 엑셀 VBA] 매개변수의 전달 - ByRef, ByVal (0) | 2017.05.24 |
얼렁뚱땅 엑셀 VBA] Function 프로시저 (0) | 2017.05.23 |
얼렁뚱땅 엑셀 VBA] 조건문(Select Case문) (0) | 2017.05.20 |
얼렁뚱땅 엑셀 VBA] 조건문(If~Then~Else문 / IIf문) (0) | 2017.05.19 |
얼렁뚱땅 엑셀 VBA] 배열변수, 동적 배열변수 (1) | 2017.05.18 |
얼렁뚱땅 엑셀 VBA] 변수, 상수, 개체변수 (0) | 2017.05.17 |
얼렁뚱땅 엑셀 VBA] 프로시저 (Public / Private 프로시저) (0) | 2017.05.16 |
얼렁뚱땅 엑셀 VBA] With ~ End With 구문 (0) | 2017.05.15 |
댓글