책 내용 질문하기
함수 관련 질문드립니다.
도서
2018 시나공 컴퓨터활용능력 1급 실기(엑셀, 액세스 2010 사용자용)
페이지
0
조회수
357
작성일
2019-12-09
작성자
탈퇴*원
첨부파일

1. index match max 함수가 쓰이는 계산작업 문제가 뒤에 해답을 봐도 이해가 가지 않습니다.

 

=INDEX(reference,row_num,[column_num],[area_num]) 

 

reference 에는 참조영역(전체 범위)를 넣는 이후 언제 match함수를 row_num에  쓰는지 [column_num에 쓰는지 모르겠습니다.

 

그리고

MATCH(lookup_value,lookup_array_match_type 에서도 어디에 뭘 써야 하는지 잘 모르겠습니다. 

 

2. VLOOKUP, HLOOKUP함수에서 

 

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup 중 마지막은 false, true 를 쓰는거 밖에 모르겠네요... 

 

lookup_value,table_array,col_index_num 구간에 뭘 써야 할지 어떻게 아나요? 

 

3. 프로시저 관련 문의드립니다.

 

3-1

P.464 - cells(입력행,1) = lst목록.column(0) << .column(0)이 왜 들어가나요?

 

3-2

입력행 = [a3].row + [a3].currentregion.rows.count가 있고 count-1이 있는데 언제가 count고 언제가 count-1인가요??

 

3-3 

계산작업중 for문을 이용하는 경우

 

for 반복변수 = 시작값 to 최종값

실행문

next 반복변수

를 어떤식으로 쓰는지 궁금합니다..

 

쓰다보니 질문이 많아졌는데... 항상 고생많으십니다...

 

좋은 하루되세요.

 

 

 

 

답변
2019-12-11 10:39:07

1.

{=INDEX($B$4:$H$43,MATCH(MAX(IF($D$4:$D$43=$K26,$G$4:$G$43)),($D$4:$D$43=$K26)*$G$4:$G$43,0),2)}

=index( 범위, match (max(if( 조건 ,반환할값)), (match의 조건)* 반환할 값, match의옵션), index의 열범위)

 

2. =vlookup(찾을값, 찾을 범위, 열번호,옵션 )

 

입니다. 찾을 값을 선택 하고 찾을 범위의 첫번째 열은 찾을 값이 입력된 범위를 사용하시면 됩니다.

 

그리고 반환할 값의 열번호를 입력하시면 됩니다.

 

3. column은 목록 상자나 콤보상자의 열을 지정하는 것으로 교재처럼 지정을 하면 선택한 행의 column으로 지정한 열의 값이 입력됩니다.

목록 상자의 값을 입력하는 방법은 여러 가지고 문제에서 특정 항목을 사용하라는 지시사항이 없다면 어떤 것으로 작성하든 상관 없습니다.

 

4.

쉽게 설명 한다면

입력행=[a3].row+[a3].currentregion.count

은 입력 버튼, 즉 컨트롤에 입력된 값을 마지막 셀뒤에 입력 할때 사용 하는 것이구요.

입력행=[a3].row+[a3].currentregion.count -1

은 조회 버튼, 즉 셀에 입력된 값의 마지막 데이터를 조회할때 사용 하는 것입니다.

[a3].row 는 a3의 행위치를 나타내므로 3이 나오구요.

 

[a3].currentregion.rows.count 는 a3부터 입력되어 있는 값들의 개수를 세게 됩니다.

 

a3부터 3줄의 데이터가 있다면 이 값은 3이 되고

 

3+3 이 되어 6 행이 되는 것이죠. (필드명 포함해서 입니다. 필드명부터 4줄이라면 4를 더해주셔야 합니다.)

 

즉 6번행부터 입력하게 합니다.

 

이것은 마지막 데이터 다음줄에 값을 입력 하는 입력 프로시저에 사용하는 것이고

 

여기에 -1 을 하신다면 마지막 줄을 조회하여 폼에 나타나게 하는 조회 프로시저를 작성 하는 것입니다.

 

이름=cells(입력행,1)

 

과 같이 나타내는 것은 이름에 셀에 입력된 값을 입력 하라는 것으로 셀에 입력된 값을 폼에 입력하게 하는

 

조회 하실때 사용하는 것이구요.

 

cells(입력행,1)=이름

 

은 셀에 폼의 컨트롤에 입력된 이름 값을 셀에 입력 하라는 것으로

 

입력 프로시저를 작성할 때 사용하는 것입니다.

 

프로시저에서 =은 같다가 아니라

 

오른쪽에 있는 데이터를 왼쪽으로 넣는다 라는 개념으로 생각 하셔야 합니다.

 

 

입력행 = [a3].row + [a3].currentregion.rows.count -1

 

이름=cells(입력행,1)

 

과 같이 작성하시면 조회를 하는 프로시저이고

 

입력행 = [a3].row + [a3].currentregion.rows.count

 

cells(입력행,1)=이름

 

으로 작성하시면 셀에 입력하는 입력 프로시저가 되는 것입니다.

 

데이터를 추가하거나 삭제하여도 항상 마지막 데이터 다음에 입력되어야 함

 

은 입력행 = [a3].row + [a3].currentregion.rows.count 을 입력하면 됩니다.

 

5.

For 초기값 to 최종값 step 증가분

 //반복되어 실행될 코드

Next

 

예를 들어

For a=1 to 10

a=a+1

Next a 라면

 

a는 1부터 10까지 반복되면서 누적합계를 구하는 코드가 됩니다.

For문은 a의 값이 10보다 작지 않은지 확인 하고 1~10 사이의 수라면

a=a+1을 실행합니다.

next a 를 만나면 다시 for 문의 시작으로 제어가 이동합니다.

다시 a가 1~10 사이의 수인지 확인하고,

1~10 사이의 수라면 a=a+1을 수행하고, 그렇지 않으면 Next a 다음으로 제어를 이동시키며 For문을 빠져나옵니다.

 

 

 

좋은 하루 되세요. 

  • 관리자
    2019-12-11 10:39:07

    1.

    {=INDEX($B$4:$H$43,MATCH(MAX(IF($D$4:$D$43=$K26,$G$4:$G$43)),($D$4:$D$43=$K26)*$G$4:$G$43,0),2)}

    =index( 범위, match (max(if( 조건 ,반환할값)), (match의 조건)* 반환할 값, match의옵션), index의 열범위)

     

    2. =vlookup(찾을값, 찾을 범위, 열번호,옵션 )

     

    입니다. 찾을 값을 선택 하고 찾을 범위의 첫번째 열은 찾을 값이 입력된 범위를 사용하시면 됩니다.

     

    그리고 반환할 값의 열번호를 입력하시면 됩니다.

     

    3. column은 목록 상자나 콤보상자의 열을 지정하는 것으로 교재처럼 지정을 하면 선택한 행의 column으로 지정한 열의 값이 입력됩니다.

    목록 상자의 값을 입력하는 방법은 여러 가지고 문제에서 특정 항목을 사용하라는 지시사항이 없다면 어떤 것으로 작성하든 상관 없습니다.

     

    4.

    쉽게 설명 한다면

    입력행=[a3].row+[a3].currentregion.count

    은 입력 버튼, 즉 컨트롤에 입력된 값을 마지막 셀뒤에 입력 할때 사용 하는 것이구요.

    입력행=[a3].row+[a3].currentregion.count -1

    은 조회 버튼, 즉 셀에 입력된 값의 마지막 데이터를 조회할때 사용 하는 것입니다.

    [a3].row 는 a3의 행위치를 나타내므로 3이 나오구요.

     

    [a3].currentregion.rows.count 는 a3부터 입력되어 있는 값들의 개수를 세게 됩니다.

     

    a3부터 3줄의 데이터가 있다면 이 값은 3이 되고

     

    3+3 이 되어 6 행이 되는 것이죠. (필드명 포함해서 입니다. 필드명부터 4줄이라면 4를 더해주셔야 합니다.)

     

    즉 6번행부터 입력하게 합니다.

     

    이것은 마지막 데이터 다음줄에 값을 입력 하는 입력 프로시저에 사용하는 것이고

     

    여기에 -1 을 하신다면 마지막 줄을 조회하여 폼에 나타나게 하는 조회 프로시저를 작성 하는 것입니다.

     

    이름=cells(입력행,1)

     

    과 같이 나타내는 것은 이름에 셀에 입력된 값을 입력 하라는 것으로 셀에 입력된 값을 폼에 입력하게 하는

     

    조회 하실때 사용하는 것이구요.

     

    cells(입력행,1)=이름

     

    은 셀에 폼의 컨트롤에 입력된 이름 값을 셀에 입력 하라는 것으로

     

    입력 프로시저를 작성할 때 사용하는 것입니다.

     

    프로시저에서 =은 같다가 아니라

     

    오른쪽에 있는 데이터를 왼쪽으로 넣는다 라는 개념으로 생각 하셔야 합니다.

     

     

    입력행 = [a3].row + [a3].currentregion.rows.count -1

     

    이름=cells(입력행,1)

     

    과 같이 작성하시면 조회를 하는 프로시저이고

     

    입력행 = [a3].row + [a3].currentregion.rows.count

     

    cells(입력행,1)=이름

     

    으로 작성하시면 셀에 입력하는 입력 프로시저가 되는 것입니다.

     

    데이터를 추가하거나 삭제하여도 항상 마지막 데이터 다음에 입력되어야 함

     

    은 입력행 = [a3].row + [a3].currentregion.rows.count 을 입력하면 됩니다.

     

    5.

    For 초기값 to 최종값 step 증가분

     //반복되어 실행될 코드

    Next

     

    예를 들어

    For a=1 to 10

    a=a+1

    Next a 라면

     

    a는 1부터 10까지 반복되면서 누적합계를 구하는 코드가 됩니다.

    For문은 a의 값이 10보다 작지 않은지 확인 하고 1~10 사이의 수라면

    a=a+1을 실행합니다.

    next a 를 만나면 다시 for 문의 시작으로 제어가 이동합니다.

    다시 a가 1~10 사이의 수인지 확인하고,

    1~10 사이의 수라면 a=a+1을 수행하고, 그렇지 않으면 Next a 다음으로 제어를 이동시키며 For문을 빠져나옵니다.

     

     

     

    좋은 하루 되세요. 

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