책 내용 질문하기
220p 문제2의 지시사항3번과 For Each문에 대한 질문입니다.
도서
[2015] 컴퓨터활용능력 1급 실기
페이지
220
조회수
58
작성일
2015-03-13
작성자
첨부파일

1.

좌측은 지시사항3번에 대한 해답이구, 우측은 제가 쓴 코드입니다.

참조행이라는 변수를 만드는 대신에, a.Row를 써서 현재 개체의 행번호를 불러왔습니다.

그리고 변수 찾았니는 해답에 있는 변수 스위치와 같은 의미로 쓰였구요.

해답에서는 Next , 저는 Next a 이렇게 썼습니다.

결과는 같은것 같은데 채점할때는 감점이 되나요 ?

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

Private Sub cmd고객조회_Click()

찾았니 = 0
For Each a In Range("D4:D7")
If a.Value = txt고객명 Then
txt고객등급 = Cells(a.Row, 5)
txt매출금액 = Cells(a.Row, 6)
txt결제방식 = Cells(a.Row, 7)
찾았니 = 1
Exit For
End If
Next a
If 찾았니 = 0 Then
MsgBox "조건에 일치하는 자료가 없습니다."
End If
End Sub

2.

234p의 For Each 함수설명을 보면 함수형식이

For Each 개체변수 In 컬랙션 개체

실행문

Next 개체변수

이렇다고 나와있어서 Next a라고 쓴건데,

해답에은 그냥 Next로 끝났더라구요.

Next다음에 개체변수를 쓰든 안쓰든 상관이없는건지...."Next 개체변수"라는 코드의 문법적의미가 궁금합니다.

답변
2015-03-17 05:58:12

1. 결과가 정확히 나온다면 변수가 달라도 정답으로 인정 됩니다.

2. 어떻게 작성하시든 정확히 나오면 상관 없는 부분이세요.

FOR EACH~NEXT : 컬렉션에 포함된 개체의 수만큼 명령 코드를 반복 실행하는 명령문입니다. For Each aa In Range("b4:b19") 이렇게 작성하면 b4:b19 영역의 개체 수 즉, 셀의 수인 16번을 반복 수행하게 되는 것입니다.

좋은 하루 되세요.

"
  • *
    2015-03-17 05:58:12

    1. 결과가 정확히 나온다면 변수가 달라도 정답으로 인정 됩니다.

    2. 어떻게 작성하시든 정확히 나오면 상관 없는 부분이세요.

    FOR EACH~NEXT : 컬렉션에 포함된 개체의 수만큼 명령 코드를 반복 실행하는 명령문입니다. For Each aa In Range("b4:b19") 이렇게 작성하면 b4:b19 영역의 개체 수 즉, 셀의 수인 16번을 반복 수행하게 되는 것입니다.

    좋은 하루 되세요.

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