책 내용 질문하기
4. - ③
도서
[2012] 컴퓨터활용능력 1급 실기(엑셀, 액세스 2007 사용자용)
페이지
155
조회수
76
작성일
2012-11-19
작성자
첨부파일

Private Sub Cmd입력_Click()

i = [a2].Row + [a2].CurrentRegion.Rows.Count
r = Cmb모델.ListIndex + 4

Cells(i, 2) = Cmb모델
Cells(i, 3) = Text년식
Cells(i, 4) = Cells(r, 12)
If txt년식 = "" Or Text등록일 < txt년식 Then
Cells(i, 5) = "등록오류"
Else

Cells(i, 5) = Cells(r, 12) * 0.8 ^ (Text등록일 - txt년식)
End If

Cells(i, 6) = Text등록인
Cells(i, 7) = Text등록일

End Sub
위의 구문은 제가 풀었던 프로시저 구문인데요.
붉은색으로 굵게 처리된 부분에서 의문이 생겨서 질문 드립니다.
저는 신차량가격을 참조행의 셀로 위와 같이 표기를 하였는데,
답지에서는 cells(i,4)와 같이 입력행의 셀로 표시를 하였습니다.
제가 코딩을 하면서도 헷갈렸던 부분인데요.
둘중에서 어떤것을 선택하든 결과가 같다면 상관없겠지만, 실제로 붉은색 처리를 한 결과에서는
감가차량가격란에 "등록오류"가 입력이 되었고요.
답지와 같이 하게되면 정상적으로 나옵니다.
두번다시 틀리지 않게
그 이유를 설명해주세요.^^
답변
2012-11-20 10:05:37

질문 주신 내용으로 실행해 보았는데 정상적인 값이 입력됩니다.

다시 한번 확인해 보시겠어요?

저는 참조행을 만들지 않고

Private Sub Cmd입력_Click()
입력행 = [a2].Row + [a2].CurrentRegion.Rows.Count
Cells(입력행, 2) = Cmb모델
Cells(입력행, 3) = Text년식
Cells(입력행, 4) = Cells(Cmb모델.ListIndex + 4, 12)
If Text년식 = "" Or Text등록일 < Text년식 Then
Cells(입력행, 5) = "등록오류"
Else
Cells(입력행, 5) = Cells(Cmb모델.ListIndex + 4, 12) * 0.8 ^ (Text등록일 - Text년식)
End If
Cells(입력행, 6) = Text등록인
Cells(입력행, 7) = Text등록일
End Sub

위 식과 같이 해 보았습니다.

정확히 실행 되므로 정답으로 인정 될 수 있습니다.

좋은 하루 되세요.

"
  • *
    2012-11-20 10:05:37

    질문 주신 내용으로 실행해 보았는데 정상적인 값이 입력됩니다.

    다시 한번 확인해 보시겠어요?

    저는 참조행을 만들지 않고

    Private Sub Cmd입력_Click()
    입력행 = [a2].Row + [a2].CurrentRegion.Rows.Count
    Cells(입력행, 2) = Cmb모델
    Cells(입력행, 3) = Text년식
    Cells(입력행, 4) = Cells(Cmb모델.ListIndex + 4, 12)
    If Text년식 = "" Or Text등록일 < Text년식 Then
    Cells(입력행, 5) = "등록오류"
    Else
    Cells(입력행, 5) = Cells(Cmb모델.ListIndex + 4, 12) * 0.8 ^ (Text등록일 - Text년식)
    End If
    Cells(입력행, 6) = Text등록인
    Cells(입력행, 7) = Text등록일
    End Sub

    위 식과 같이 해 보았습니다.

    정확히 실행 되므로 정답으로 인정 될 수 있습니다.

    좋은 하루 되세요.

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