책 내용 질문하기
문제4에 있는 2번문제가 이해가 안돼요..
도서
2019 시나공 기출문제집 컴퓨터활용능력 1급 실기
페이지
29
조회수
263
작성일
2019-07-01
작성자
탈퇴*원
첨부파일

자세하게 풀이 부탁드립니다.

답변
2019-07-03 00:26:01

안녕하세요.

 

구체적으로 어떤 부분이 이해가 안되시는지 알려주시면

좀 더 정확히 답변드릴 수 있습니다.

 

교재 72쪽에 해설이 나와 있는데요,

1.

<구매> 버튼을 누르면 물품구매 폼이 나타나야 합니다.

cmd구매_Click 프로시저에

물품구매.show 를 입력하시면 물품구매 폼이 보이게 됩니다.

 

2.

폼이 실행되면 콤보 상자에 오늘 날짜 ~ 5일 전 날짜까지 항목에 표시되도록해야 합니다.

폼이 실행되면 이므로 UserForm_Initialize( ) 프로시저에 코드를 작성해 주셔야 합니다.

cmb날짜 컨트롤에 데이터를 직접 추가해야 하므로 .additem 메서드를 이용합니다.

cmb날짜.additem date 는 현재 날짜가 cmb날짜에 추가됩니다.

어제 날짜를 표현하기 위해 date-1을 이용합니다.

cmb날짜.additem date-1 로 작성하면 되겠죠.

 

 

3. 폼의 자료를 워크시트에 입력하는 문제입니다.

74쪽 해설을 참고해 주셔야 합니다.

cmb입력_Click() 프로시저에는 참조행과 입력행이라는 변수가 사용됩니다.

변수는 변하는 값을 저장하는 곳으로,

참조행은 참조되는 행을 지정하고, 입력행은 워크시트의 마지막 데이터 다음 행을 가리키는 것으로 새로 데이터가 들어갈 행입니다.

우선,

참조행 = lst품목.Listindex 로 설정합니다.

lst품목은 폼의 목록 상자이고 lst품목.listindex는 목록에서 선택된 데이터의 인덱스번호를 반환합니다.

목록상자의 목록은 인덱스 0부터 시작합니다.

만약 두 번째 데이터를 선택한다면 listindex는 1이 됩니다.

 

입력행 = [a1].ROW + [a1].CurrentRegion.Rows.Count 가 됩니다.

 

[a1].Row는 기준행이 되는 [a1] 셀의 행인 1입니다.

[a1].CurrentRegion.Rows.Count 는 [a1]과 연결된 행의 수를 세는 것입니다.

 

29쪽 워크시트까지 함께 보시면

입력행 = [a1].ROW + [a1].CurrentRegion.Rows.Count

입력행 = 1            + 4(1,2,3,4행이므로 개수는 4입니다.) = 5

다음 입력행이 5가 되는 것이죠.

 

위의 결과대로 이제 참조행에 1, 입력행에 5가 있다고 가정합니다.

Cells(1,1)이면 워크시트의 1행 1열을 의미하는 것입니다.

 

Cells(입력행,1) =CDate(cmb날짜) 는

Cells(5,1)에 cmb날짜의 값을 Cdate 함수로 날짜 형식으로 지정해서 표시합니다.

 

Cells(입력행,2) = cmb문구점 은

Cells(5,2)에 cmb날짜에서 선택한 값을 표시합니다.

 

Cells(입력행,3) = lst품목.List(참조행,0) 은

Cells(5,3)에 lst품목.List(1,0)의 값을 표시합니다.

lst품목.List(1,0)은 lst품목 컨트롤의 인덱스를 기준으로 1,0 에 있는 항목입니다.

29쪽 화면을 기준으로 '연필'이 표시됩니다.

 

Cells(입력행,4) = lst품목.List(참조행,1) 은

Cells(5,4)에 lst품목.List(1,1)의 값을 표시합니다.

lst품목.List(1,1)은 lst품목 컨트롤의 인덱스를 기준으로 1,1 에 있는 항목입니다.

29쪽 화면을 기준으로 '1200'이 표시됩니다.

 

5열은 txt수량을 숫자로 만들어서 표시합니다.

6열은 4열과 5열의 값을 곱해서 표시합니다.

 

 

4. 폼 종료하기

['기타작업-1'!A1] = "판매 현황"은 기타작업-1 시트의 A1셀에 "판매 현황"을 표시합니다.

Unload me는 현재 폼을 종료합니다.

 

 

좋은 하루 보내세요. 

 

  • 관리자
    2019-07-03 00:26:01

    안녕하세요.

     

    구체적으로 어떤 부분이 이해가 안되시는지 알려주시면

    좀 더 정확히 답변드릴 수 있습니다.

     

    교재 72쪽에 해설이 나와 있는데요,

    1.

    <구매> 버튼을 누르면 물품구매 폼이 나타나야 합니다.

    cmd구매_Click 프로시저에

    물품구매.show 를 입력하시면 물품구매 폼이 보이게 됩니다.

     

    2.

    폼이 실행되면 콤보 상자에 오늘 날짜 ~ 5일 전 날짜까지 항목에 표시되도록해야 합니다.

    폼이 실행되면 이므로 UserForm_Initialize( ) 프로시저에 코드를 작성해 주셔야 합니다.

    cmb날짜 컨트롤에 데이터를 직접 추가해야 하므로 .additem 메서드를 이용합니다.

    cmb날짜.additem date 는 현재 날짜가 cmb날짜에 추가됩니다.

    어제 날짜를 표현하기 위해 date-1을 이용합니다.

    cmb날짜.additem date-1 로 작성하면 되겠죠.

     

     

    3. 폼의 자료를 워크시트에 입력하는 문제입니다.

    74쪽 해설을 참고해 주셔야 합니다.

    cmb입력_Click() 프로시저에는 참조행과 입력행이라는 변수가 사용됩니다.

    변수는 변하는 값을 저장하는 곳으로,

    참조행은 참조되는 행을 지정하고, 입력행은 워크시트의 마지막 데이터 다음 행을 가리키는 것으로 새로 데이터가 들어갈 행입니다.

    우선,

    참조행 = lst품목.Listindex 로 설정합니다.

    lst품목은 폼의 목록 상자이고 lst품목.listindex는 목록에서 선택된 데이터의 인덱스번호를 반환합니다.

    목록상자의 목록은 인덱스 0부터 시작합니다.

    만약 두 번째 데이터를 선택한다면 listindex는 1이 됩니다.

     

    입력행 = [a1].ROW + [a1].CurrentRegion.Rows.Count 가 됩니다.

     

    [a1].Row는 기준행이 되는 [a1] 셀의 행인 1입니다.

    [a1].CurrentRegion.Rows.Count 는 [a1]과 연결된 행의 수를 세는 것입니다.

     

    29쪽 워크시트까지 함께 보시면

    입력행 = [a1].ROW + [a1].CurrentRegion.Rows.Count

    입력행 = 1            + 4(1,2,3,4행이므로 개수는 4입니다.) = 5

    다음 입력행이 5가 되는 것이죠.

     

    위의 결과대로 이제 참조행에 1, 입력행에 5가 있다고 가정합니다.

    Cells(1,1)이면 워크시트의 1행 1열을 의미하는 것입니다.

     

    Cells(입력행,1) =CDate(cmb날짜) 는

    Cells(5,1)에 cmb날짜의 값을 Cdate 함수로 날짜 형식으로 지정해서 표시합니다.

     

    Cells(입력행,2) = cmb문구점 은

    Cells(5,2)에 cmb날짜에서 선택한 값을 표시합니다.

     

    Cells(입력행,3) = lst품목.List(참조행,0) 은

    Cells(5,3)에 lst품목.List(1,0)의 값을 표시합니다.

    lst품목.List(1,0)은 lst품목 컨트롤의 인덱스를 기준으로 1,0 에 있는 항목입니다.

    29쪽 화면을 기준으로 '연필'이 표시됩니다.

     

    Cells(입력행,4) = lst품목.List(참조행,1) 은

    Cells(5,4)에 lst품목.List(1,1)의 값을 표시합니다.

    lst품목.List(1,1)은 lst품목 컨트롤의 인덱스를 기준으로 1,1 에 있는 항목입니다.

    29쪽 화면을 기준으로 '1200'이 표시됩니다.

     

    5열은 txt수량을 숫자로 만들어서 표시합니다.

    6열은 4열과 5열의 값을 곱해서 표시합니다.

     

     

    4. 폼 종료하기

    ['기타작업-1'!A1] = "판매 현황"은 기타작업-1 시트의 A1셀에 "판매 현황"을 표시합니다.

    Unload me는 현재 폼을 종료합니다.

     

     

    좋은 하루 보내세요. 

     

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