본문 바로가기
엑셀 함수 - 두개 이상

데이터에서 최대값 or 최소값의 대상을 찾는 함수(index, match, max, min)

by 킴시 2020. 11. 13.

안녕하세요 킴셀입니다. 이번엔 2가지 함수 이상을 섞어서 데이터베이스에서 최대값 or 최소값을 찾고 그 최대값 or 최소값을 가지는 대상을 찾기 위하여 쓰는 함수(index, match, max, min)를 포스팅 하겠습니다.

 

INDEX 함수입니다. ( 지정한 범위내에서  행 또는 행과 열에 위치한 값을 추출하는 함수입니다)

INDEX(array, row_num, [column_num]) - 

array : 찾을 값의 범위

row_num : 행(가로)값의 위치(숫자로 지정합니다)

[column_num] : 열(세로)값의 위치(숫자로 지정합니다)

 

예시를 보겠습니다.

 

=INDEX(C3:F3,4)

C3:F3 : 찾을값의 범위입니다. 범위는 각 행에서 의 C3 부터 F3 까지 입니다.

4 : 최고값을 임시로 적었습니다.(후에 MATCH를 써서 이 값을 채워줍니다)

만약 [column_num] 값을 넣어주려면 array의 열을 확장시켜줘야합니다.

하지만 이번 데이터에서는 행값만 필요하기에 제외시킵니다.

 

결과입니다.

지정한 행범위내에 4번째 위치한 120값이 추출되었습니다.


다음은 MATCH 함수입니다.

 

지정한 값과 해당 범위내에서 지정한 값이 위치한 행의 순서를 추출하는 함수 입니다.

 

MATCH(lookup_value, lookup_array, [match_type])

lookup_value : 찾을 값

lookup_array : lookup_value의 범위

[match_type] : 0 (정확히 일치) , 1 (작은 값), -1 (큰 값)

 

 

=MATCH(F3,C3:F3,0)

F3 : 찾을 값입니다. 제일높은값 120을 찾기위해 F3을 임의로 입력했습니다.

C3:F3 : F3을 찾기위한 범위 입니다.

0 : 정확히 일치하는 값이여야 하기때문에 0을 입력합니다.

 

결과입니다.

 

F3(120) 값이 C3 ~ F3 행에서 4번째 위치하는걸 확인했습니다.


다음은 MAX, MIN

= MAX(number1, [nember2],~)

number1, [nember2],~ : 숫자데이터의 범위

= MIN(number1, [nember2],~)

number1, [nember2],~ : 숫자데이터의 범위

 

예시입니다.

 

=MAX(C3:F3)

범위내에서 최고값을 설정합니다.

 

결과입니다.

 

120 값이 추출 되었습니다.

 

MIN도 같은 방법으로 설정합니다.


3가지 함수를 사용하여 분기 최고매출을 달성한 회사를 추출합니다.

 

여기서 저희는 1/4분기 최고매출에 대한 회사는 어느회사인가를 찾아야합니다.

 

A회사~D회사를 찾기위해 INDEX MATCH MAX 함수를 사용합니다.

 

=INDEX($C$2:$F$2,MATCH(MAX(C3:F3),C3:F3,0))

$C$2:$F$2 : 결과값을 추출할 회사 범위를 지정합니다.(A회사~D회사)

MATCH(MAX(C3:F3),C3:F3,0 : MAX함수로 범위내에서 최고값을 설정해주고 그 최고값이 범위내에서 몇번째에 위치한 값인지와 정확한 값인지 지정해 줍니다.

 

맨위에서 INDEX 함수 사용방법에서 보시는거와같이 =INDEX($C$2:$F$2,4)를 쓰면 행 4번째에 위치한 D회사가 추출

됩니다.

 

 

최고값을 일일이 지정할수는없기에 MAX 함수를 사용하여 최고값을 설정하고 그 최고값이 설정된 위치를 찾기위해

MATCH 와 MAX 함수를 사용해줍니다.

MATCH(MAX(C3:F3),C3:F3,0)

최대값이 위치한 행번호가 추출되었습니다.

 

이를 조합한 결과값입니다.

 

C2~ F2 범위내에서 각 행에 최고값이 위치한 행번호의 값이 추출 되었습니다.

 

최소값을 찾을경우 MAX를 MIN 함수로 변경하시면 됩니다.

 

궁금하신게 있으시면 댓글 달아주세요.

댓글