책 내용 질문하기
프로시저 기출2번 exit for 에 관한 구절에대해 질문있어요
도서
2018 시나공 컴퓨터활용능력 1급 실기(엑셀, 액세스 2010 사용자용)
페이지
251
조회수
86
작성일
2018-12-08
작성자
탈퇴*원
첨부파일

Private Sub cmd고객조회_Click()
스위치 = 0
참조행 = 3
For Each aa In Range("d4:d7")
참조행 = 참조행 + 1
If aa.Value = txt고객명 Then
txt고객등급 = Cells(참조행, 5)
txt매출금액 = Cells(참조행, 6)
txt결제방식 = Cells(참조행, 7)
스위치 = 1
Exit For
End If
Next
If 스위치 = 0 Then
MsgBox "조건에 일치하는 자료가 없습니다."
End If
End Sub


이부분에서요 exit for 라는게 정말 필요한 구절인가요? 책에는 for문 마무리가 next로 써있는데 for를 끝낼때 쓰는거라고 문의글들에 써있길래

한번 빼서 작동시켜 보니까 잘되더라구요 그렇다면 굳이 exit for 라는 것을 쓸필요가 없지 않나요? 구문도 아닌것 같은데..

넣는 이유가 무엇인가요?

 

답변
2018-12-09 22:11:31

안녕하세요.

 

조건에 만족하는 데이터를 찾았다면, 스위치를 1로 바꾸고 For 문을 빠져나가서 그만 찾는 것입니다.

 

좋은 하루 보내세요. 

  • 관리자
    2018-12-09 22:11:31

    안녕하세요.

     

    조건에 만족하는 데이터를 찾았다면, 스위치를 1로 바꾸고 For 문을 빠져나가서 그만 찾는 것입니다.

     

    좋은 하루 보내세요. 

  • 관리자
    2018-12-21 09:35:45

    안녕하세요.

     

    - exit for를 삭제해도 정상적으로 실행되므로, 없어도 실제 시험에서는 맞는 것으로 채점됩니다.

    - exit for를 넣는 이유는 조건에 만족하는 데이터를 찾으면 해당 데이터를 표시한 후 더이상 다른 데이터를 비교할 필요가 없으므로 exit for를 사용하여 for문을 종료하는 것입니다. 이 문제의 경우는 데이터가 몇개 없으니 exit for를 사용할때와 사용하지 않을때 검색 시간이 차이가 없지만 몇 백만건의 데이터가 있다면 만족하는 데이터를 찾은 후 더 이상 검색을 하지 않으므로 시간이 단축됩니다.

     

    즐거운 하루 되세요. 

  • *
    2018-12-10 10:59:29

    제가 물어본것은 exit for 가 들어가는 이유를 물어보는게 아니라 없는대도 작동이 잘되는데 굳이 쓸필요가 있냐는 거에요

    즉, 작동만 잘만 되면 채점에 문제가 없는지 와 빼도 작동이 잘되는 이유를 물어보는 거에요

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.