책 내용 질문하기
프로시저
도서
2018 시나공 컴퓨터활용능력 1급 실기(엑셀, 액세스 2010 사용자용)
페이지
조회수
41
작성일
2018-09-03
작성자
탈퇴*원
첨부파일

프로시저 종료단추에 vbokonly는 입력하든 안하든 상관없는건가요?

17-1 4번문제에서 요금=(퇴장시간의 시간-입장시간의 시간) * 기본요금 작성할때

(Hour(txt퇴장시간)-Hour(txt입장시간))*cells(입력행,5) 말고 column(1)로하니까 오답이던데 무슨 차이인거죵?

책에서 프로시저 작성할때 참조행을 입력하는 문제도 있고 안하는 문제도 있던데 어떻게 구분하는건가요?

자세하게좀 알려주세요ㅠㅠ

답변
2018-09-04 10:20:24

안녕하세요.

vbOKonly는 기본값이므로 생략하시면 vbokonly로 적용됩니다.

cmb구분.column(1)을 말씀하시는 건가요? 다음과 같이 입력하셔도 답은 구해집니다.

Cells(입력행, 8) = (Hour(txt퇴장시간) - Hour(txt입장시간)) * cmb구분.Column(1)

참조행과 입력행은 예를 들어 설명드리겠습니다.

>> 참조행= cmb공연.ListIndex + 5

- ‘cmb공연.ListIndex’는 콤보상자에서 선택한 공연의 상대위치를 반환합니다.
콤보 상자에서 상대적인 위치는 0에서 시작하므로 ‘피노 키오’를 선택하면 ‘cmb공연.ListIndex’는 1을 반환합니다.

- 워크시트에서 ‘피노키오’에 대한 정보는 6행(K6셀)에 입력되어 있으므로
‘피노키오’가 있는 행을 지정하기 위해 ‘cmb공연.ListIndex’에 반환한 값 1에 5를 더한 것입니다.


- 즉, 5를 더한 이유는 실제 데이터의 위치가 워크시트의 5행(K5셀) 부터 시작하기 때문입니다.

참조행은 실제 데이터의 위치를 나타내는 것입니다.

>> 입력행 = [c4].Row + [c4].CurrentRegion.Rows.Count

- ‘입력행’ 변수에 [C4] 셀의 행번호인 4와 [C4] 셀과 연결된 범위에 있는 데이터의 행수(3)를 더하여 치환합니다.

- Cells(입력행, 3) = Date 은 입력행이 7이니까

워크시트의 Cells(7, 3) 위치에 Date(날짜)를 넣으라는 의미가 됩니다.

- 쉽게 생각하면 워크시트에 데이터를 입력할 행을 표시하는 것이 입력행입니다.


>> Cells(입력행, 7) = Cells(참조행, 12)

- Cells(입력행,7열) : 위 상태에서는 입력행이 7이므로 7행,7열(A열부터 1씩 세면 표1의 '구분' 필드가 됨) [G7]셀

- Cmb공연명.ListIndex+5으로 가져온 참조행이 위 그림에서는 '요술친구'가 선택되었으므로 3+5=8행이되고.

12열은 A열부터 1씩 세면 '구분' 필드가 됩니다.

- 즉, [G7] 셀에 cmb공연명에서 선택한 공연의 구분 정보(가족극)를 넣으라는 것입니다.

좋은 하루 보내세요.

  • *
    2018-09-04 10:20:24

    안녕하세요.

    vbOKonly는 기본값이므로 생략하시면 vbokonly로 적용됩니다.

    cmb구분.column(1)을 말씀하시는 건가요? 다음과 같이 입력하셔도 답은 구해집니다.

    Cells(입력행, 8) = (Hour(txt퇴장시간) - Hour(txt입장시간)) * cmb구분.Column(1)

    참조행과 입력행은 예를 들어 설명드리겠습니다.

    >> 참조행= cmb공연.ListIndex + 5

    - ‘cmb공연.ListIndex’는 콤보상자에서 선택한 공연의 상대위치를 반환합니다.
    콤보 상자에서 상대적인 위치는 0에서 시작하므로 ‘피노 키오’를 선택하면 ‘cmb공연.ListIndex’는 1을 반환합니다.

    - 워크시트에서 ‘피노키오’에 대한 정보는 6행(K6셀)에 입력되어 있으므로
    ‘피노키오’가 있는 행을 지정하기 위해 ‘cmb공연.ListIndex’에 반환한 값 1에 5를 더한 것입니다.


    - 즉, 5를 더한 이유는 실제 데이터의 위치가 워크시트의 5행(K5셀) 부터 시작하기 때문입니다.

    참조행은 실제 데이터의 위치를 나타내는 것입니다.

    >> 입력행 = [c4].Row + [c4].CurrentRegion.Rows.Count

    - ‘입력행’ 변수에 [C4] 셀의 행번호인 4와 [C4] 셀과 연결된 범위에 있는 데이터의 행수(3)를 더하여 치환합니다.

    - Cells(입력행, 3) = Date 은 입력행이 7이니까

    워크시트의 Cells(7, 3) 위치에 Date(날짜)를 넣으라는 의미가 됩니다.

    - 쉽게 생각하면 워크시트에 데이터를 입력할 행을 표시하는 것이 입력행입니다.


    >> Cells(입력행, 7) = Cells(참조행, 12)

    - Cells(입력행,7열) : 위 상태에서는 입력행이 7이므로 7행,7열(A열부터 1씩 세면 표1의 '구분' 필드가 됨) [G7]셀

    - Cmb공연명.ListIndex+5으로 가져온 참조행이 위 그림에서는 '요술친구'가 선택되었으므로 3+5=8행이되고.

    12열은 A열부터 1씩 세면 '구분' 필드가 됩니다.

    - 즉, [G7] 셀에 cmb공연명에서 선택한 공연의 구분 정보(가족극)를 넣으라는 것입니다.

    좋은 하루 보내세요.

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