책 내용 질문하기
프로시저 질문
도서
2021 시나공 컴퓨터활용능력 1급 실기
페이지
252,253,254
조회수
345
작성일
2021-07-15
작성자
탈퇴*원
첨부파일
[252 문제 2번-3] 참조행=3 이라는데 참조행을 3으로 초기화한다는게 무슨 의미인지 모르겠습니다 표1을 참조한다는 건가요? [253 문제3-3] 참조행=cmb종류.listindex+7 인데 [254 문제4-2]에서는 참조행=lst과목.listindex만 하더라고요 여기에 +10을 안해도 되는건지 궁금합니다 두 문제의 차이는 무엇인가요?
답변
2021-07-17 21:15:13

처음에 참조행에 3을 넣고, for문의 첫번째에 참조행=참조행+1을 실행하면 참조행은 4가 됩니다.
이 4는 워크시트에서 고객명이 들어 있는 범위의 첫번째 행을 의미하는 것입니다.
즉, 첫번째 고객이 들어 있는 '김현진'은 워크시트에 4행에 입력되어 있습니다.

첫번째 데이터를 비교할 때는 참조행이 4, 두번째 데이터를 비교할 때는 for 문 안에 들어 있는
'참조행=참조행+1'를 또 실행하게 되므로 참조행은 5 이렇게 1씩 증가하게 되는 것입니다.

시험에서는 제시된 문제에 따라 초기값이 달라질 수 있습니다.

 

워크시트에서 종목과 단가의 실제 데이터가 4행부터 표시되어 있으므로 +4를 지정한 것입니다.

 

 여기에 콤보 상자에서 선택한 인덱스 값을 더해 워크시트에서 그 값에 해당하는 값을 넣습니다.

 

아래 그림은 다르지만 동일한 설명이므로 참고해 주세요. 

 

    

 

- 기본모의 4회의 경우는 워크시트에 표시된 값을 넣는 것이 아니라

 

 list를 이용하여 lst열차종류 목록상자에서 선택한 값을 표시하므로 +4를 하지 않습니다.


아래 설명을 참고해 주세요.

 

첫번째 코드는 목록상자나 콤보상자에서 특정 행을 추출할 때 사용하고,

두번째 코드는 워크시트의 셀안의 내용을 가져올때 사용 하게 됩니다.

 

<첫 번째 코드>
참조행 = lst과목.ListIndex
입력행 = [a2].Row + [a2].CurrentRegion.Rows.Count
 Cells(입력행, 1) = txtID
 Cells(입력행, 2) = txt이름
Cells(입력행, 3) = lst과목.List(참조행, 0)
Cells(입력행, 4) = lst과목.List(참조행, 1)
Cells(입력행, 5) = lst과목.List(참조행, 2)
Cells(입력행, 6) = lst과목.List(참조행, 3) - (lst과목.List(참조행, 3) * txt할인율)

 

여기에서 참조행에 lst과목.listindex 라고 정의해 두고 lst과목.list(참조행,0) 으로 사용 하고 있습니다.

이것은 참조행이 어디인지 지정해 놓고 lst과목에서 참조행의 위치와 0인.. 그러니깐 참조행이 만약 2이고 찾고자하는 것이 0행에 있다는 그런 뜻이 됩니다.

 

<두 번째 코드>
참조행 = lst열차종류.listindex + 4
입력행 = [a3].row + [a3].currentregion.rows.count

cells(입력행, 1) = txt번호
cells(입력행, 2) = cells(참조행, 8)
cells(입력행, 3) = cells(참조행, 9)
 cells(입력행, 4) = txt매수
cells(입력행, 5) = txt매수 * cells(참조행, 10)

 

이 문장에서는 lst열차종류에서 참조되는 행의 위치를 이미 지정하였습니다. 그리고 사용 할때는 8,9와 같이 엑셀에서 위치하는 열을 미리 적어 둔 것입니다.

 

정리하면,

첫번째 코드는 폼안의 list박스내의 자료를 찾아서 셀에 입력 하는 것이구요.

두번째 코드는 워크시트에서 참조표가 있는 곳의 위치를 지정하여 입력할 데이터를 확인 하는 것입니다.

참조행에 lst신상목록.listindex 라고 정의해 두고, lst신상목록.list(참조행,0) 으로 사용하고 있는 것입니다.

 

 

좋은 하루 되세요. 

  • 관리자
    2021-07-17 21:15:13

    처음에 참조행에 3을 넣고, for문의 첫번째에 참조행=참조행+1을 실행하면 참조행은 4가 됩니다.
    이 4는 워크시트에서 고객명이 들어 있는 범위의 첫번째 행을 의미하는 것입니다.
    즉, 첫번째 고객이 들어 있는 '김현진'은 워크시트에 4행에 입력되어 있습니다.

    첫번째 데이터를 비교할 때는 참조행이 4, 두번째 데이터를 비교할 때는 for 문 안에 들어 있는
    '참조행=참조행+1'를 또 실행하게 되므로 참조행은 5 이렇게 1씩 증가하게 되는 것입니다.

    시험에서는 제시된 문제에 따라 초기값이 달라질 수 있습니다.

     

    워크시트에서 종목과 단가의 실제 데이터가 4행부터 표시되어 있으므로 +4를 지정한 것입니다.

     

     여기에 콤보 상자에서 선택한 인덱스 값을 더해 워크시트에서 그 값에 해당하는 값을 넣습니다.

     

    아래 그림은 다르지만 동일한 설명이므로 참고해 주세요. 

     

        

     

    - 기본모의 4회의 경우는 워크시트에 표시된 값을 넣는 것이 아니라

     

     list를 이용하여 lst열차종류 목록상자에서 선택한 값을 표시하므로 +4를 하지 않습니다.


    아래 설명을 참고해 주세요.

     

    첫번째 코드는 목록상자나 콤보상자에서 특정 행을 추출할 때 사용하고,

    두번째 코드는 워크시트의 셀안의 내용을 가져올때 사용 하게 됩니다.

     

    <첫 번째 코드>
    참조행 = lst과목.ListIndex
    입력행 = [a2].Row + [a2].CurrentRegion.Rows.Count
     Cells(입력행, 1) = txtID
     Cells(입력행, 2) = txt이름
    Cells(입력행, 3) = lst과목.List(참조행, 0)
    Cells(입력행, 4) = lst과목.List(참조행, 1)
    Cells(입력행, 5) = lst과목.List(참조행, 2)
    Cells(입력행, 6) = lst과목.List(참조행, 3) - (lst과목.List(참조행, 3) * txt할인율)

     

    여기에서 참조행에 lst과목.listindex 라고 정의해 두고 lst과목.list(참조행,0) 으로 사용 하고 있습니다.

    이것은 참조행이 어디인지 지정해 놓고 lst과목에서 참조행의 위치와 0인.. 그러니깐 참조행이 만약 2이고 찾고자하는 것이 0행에 있다는 그런 뜻이 됩니다.

     

    <두 번째 코드>
    참조행 = lst열차종류.listindex + 4
    입력행 = [a3].row + [a3].currentregion.rows.count

    cells(입력행, 1) = txt번호
    cells(입력행, 2) = cells(참조행, 8)
    cells(입력행, 3) = cells(참조행, 9)
     cells(입력행, 4) = txt매수
    cells(입력행, 5) = txt매수 * cells(참조행, 10)

     

    이 문장에서는 lst열차종류에서 참조되는 행의 위치를 이미 지정하였습니다. 그리고 사용 할때는 8,9와 같이 엑셀에서 위치하는 열을 미리 적어 둔 것입니다.

     

    정리하면,

    첫번째 코드는 폼안의 list박스내의 자료를 찾아서 셀에 입력 하는 것이구요.

    두번째 코드는 워크시트에서 참조표가 있는 곳의 위치를 지정하여 입력할 데이터를 확인 하는 것입니다.

    참조행에 lst신상목록.listindex 라고 정의해 두고, lst신상목록.list(참조행,0) 으로 사용하고 있는 것입니다.

     

     

    좋은 하루 되세요. 

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