책 내용 질문하기
index 함수를 이용한 배열함수 질문입니다!
도서
2017 시나공 컴퓨터활용능력 1급 실기(엑셀,액세스 2007사용자용)
페이지
1
조회수
280
작성일
2019-06-12
작성자
탈퇴*원
첨부파일

안녕하세요

 

index와 match함수를 이용한 배열수식 문제를 풀어보니

 

식으로 설명드리면

=index(범위,match(...... 이런식으로 적잖아요 범위 잡을때 어떨땐 전체를 잡고 마지막에 열번호 입력하고

어떨땐 딱 구하는 값 한개의 열만 잡고 마지막에 열번호를 안입력하더라구요

그게 너무 헷갈리는데...

 

따로 판단? 하는 방법이 있을까요?

 

index, match, large 함수보니 범위 전체잡고 마지막에 열번호 입력하는 문제가 있었네요

(2019 시나공 117p 참고 -도서관에서 빌렸어용) 

답변
2019-06-13 20:10:08

안녕하세요.

 

문제에서 제시된 함수로 정확한 결과가 나온다면 시험에서는 모두 정답으로 인정됩니다.

범위는 임의대로 익숙한 방식으로 설정하시면 됩니다.

index 함수의 범위에 따라 열번호나 행번호를 지정해 주시면 됩니다.

 

=INDEX($A$9:$F$35, MATCH(LARGE(($C$9:$C$35=E3)*$D$9:$D$35,3),($C$9:$C$35=E3)*$D$9:$D$35,0),2 )

 

=INDEX(참조영역 ,행번호 ,열번호)

 

: 참조영역[$A$9:$F$35]에서 행번호(MATCH(LARGE(($C$9:$C$35=E3)*$D$9:$D$35,3),($C$9:$C$35=E3)*$D$9:$D$35,0)), 열번호 2에 해당하는 값을 반환하는 것입니다.

 

 

행번호

MATCH(LARGE(($C$9:$C$35=E3)*$D$9:$D$35,3), ($C$9:$C$35=E3)*$D$9:$D$35, 0 )
MATCH(인수 , 범위 ,방법)

: 범위에서 인수의 상대 위치를 찾아 일련번호로 반환합니다.

 

MATCH(인수, ($C$9:$C$35=E3)*$D$9:$D$35,방법)

: 배달지역이 같은 데이터 중 배달시간[$D$9:$D$35] 영역을 범위로 지정합니다.

 

인수 : LARGE(($C$9:$C$35=E3)*$D$9:$D$35,3) : 배달지역이 같은 데이터의 배달시간 중 3번째 높은 값을 구합니다.

 

즉, MATCH 함수로 배달지역별 세 번째로 높은 배달시간을 가진 데이터의 상대적 위치를 반환해 놓는 것입니다.

 

이 위치를 Index 함수의 행번호로 사용하는 것입니다.


'산남지구'의 세 번째로 높은 배달시간을 가진 데이터의 상대적 위치는 34행에 해당하는 26입니다.

 

INDEX의 열번호는 참조영역에서 2번째 열인 '배달담당'에 해당합니다.

 

'산남지구'의 경우, 참조영역을 기준으로 26행 2열(시트기준으로 34행 B열)에 해당하는 장동욱을 반환합니다.

 

좋은 하루 보내세요. 

  • 관리자
    2019-06-13 20:10:08

    안녕하세요.

     

    문제에서 제시된 함수로 정확한 결과가 나온다면 시험에서는 모두 정답으로 인정됩니다.

    범위는 임의대로 익숙한 방식으로 설정하시면 됩니다.

    index 함수의 범위에 따라 열번호나 행번호를 지정해 주시면 됩니다.

     

    =INDEX($A$9:$F$35, MATCH(LARGE(($C$9:$C$35=E3)*$D$9:$D$35,3),($C$9:$C$35=E3)*$D$9:$D$35,0),2 )

     

    =INDEX(참조영역 ,행번호 ,열번호)

     

    : 참조영역[$A$9:$F$35]에서 행번호(MATCH(LARGE(($C$9:$C$35=E3)*$D$9:$D$35,3),($C$9:$C$35=E3)*$D$9:$D$35,0)), 열번호 2에 해당하는 값을 반환하는 것입니다.

     

     

    행번호

    MATCH(LARGE(($C$9:$C$35=E3)*$D$9:$D$35,3), ($C$9:$C$35=E3)*$D$9:$D$35, 0 )
    MATCH(인수 , 범위 ,방법)

    : 범위에서 인수의 상대 위치를 찾아 일련번호로 반환합니다.

     

    MATCH(인수, ($C$9:$C$35=E3)*$D$9:$D$35,방법)

    : 배달지역이 같은 데이터 중 배달시간[$D$9:$D$35] 영역을 범위로 지정합니다.

     

    인수 : LARGE(($C$9:$C$35=E3)*$D$9:$D$35,3) : 배달지역이 같은 데이터의 배달시간 중 3번째 높은 값을 구합니다.

     

    즉, MATCH 함수로 배달지역별 세 번째로 높은 배달시간을 가진 데이터의 상대적 위치를 반환해 놓는 것입니다.

     

    이 위치를 Index 함수의 행번호로 사용하는 것입니다.


    '산남지구'의 세 번째로 높은 배달시간을 가진 데이터의 상대적 위치는 34행에 해당하는 26입니다.

     

    INDEX의 열번호는 참조영역에서 2번째 열인 '배달담당'에 해당합니다.

     

    '산남지구'의 경우, 참조영역을 기준으로 26행 2열(시트기준으로 34행 B열)에 해당하는 장동욱을 반환합니다.

     

    좋은 하루 보내세요. 

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