가장 큰 값, N번째로 큰 값 및 그 이전의 다른 값을 찾으십니까? (중복을 무시하면서)

가장 큰 값, N번째로 큰 값 및 그 이전의 다른 값을 찾으십니까? (중복을 무시하면서)

그래서 다음과 같은 A라는 열이 있습니다.

I
15
0
3
15
M
8
0
8
21
Q
0
5
0
0

나는 가장 큰 값을 찾을 수 있습니다=MAX(A1:A100) 나는 가장 작은 값을 찾을 수 있습니다=SMALL(A1:A100,1)

가장 큰 것 이전의 것과 그 이전의 것을 어떻게 찾나요? Large를 사용하여 N번째 값을 호출할 수 있지만 함수가 마지막 3개(가장 큰 값과 이전의 2개)를 참조하는 데 사용되는 위치를 알 수 있도록 함수가 계산하는 N 값의 수를 어떻게 알 수 있습니까?

중복 무시 - 예에서 가장 큰 것은 21이고 그 이전은 15이고 그 이전은 8입니다. =LARGE(A1:A100,3)을 수행하면 열에 em이 2개 있으므로 15가 반환됩니다. 그리고 저는 세 번째로 큰 값인 8을 찾고 있습니다.

아래에서는 인터넷에서 배열 수식 솔루션인 피벗 테이블을 제공한 유용한 사람들을 찾을 수 있으며, 저는 마침내 간단한 수식을 만들 수 있었습니다.

우리가 모든 것을 가지고 있다고 주장한다면 작업에 대한 VBA를 제공할 수 있습니다. 그렇지 않으면 이미 충분합니다.

답변1

피벗 테이블을 사용하여 목록의 중복 제거 버전을 빠르게 가져옵니다.행 레이블) 그런 다음 중복 제거 목록에서 LARGE및 기능을 사용합니다.SMALL

=LARGE(D4:D9,3)

중복 제거 목록을 위한 피벗 테이블

원하는 경우 피벗 테이블을 제거하여 정리할 수 있습니다.총계그리고 스위칭필드 헤더끄면 중복 제거된 목록만 표시됩니다.

답변2

열의 데이터 포함좋다:

여기에 이미지 설명을 입력하세요

~ 안에지하 1층입력하다:

=MAX(A:A)

~ 안에지하 2층배열 수식을 입력합니다.

=MAX(IF(A$1:A$10<B1,A$1:A$10))

그런 다음 복사지하 2층필요한 만큼 아래로 내려갑니다.

배열 수식그냥 키가 아닌 Ctrl+ Shift+ 로 입력해야 합니다 .EnterEnter

여기에 이미지 설명을 입력하세요

답변3

내가 얻은 모든 멋진 도움으로 피벗 테이블이 하는 일을 내가 할 수 있는지 생각하게 되었고 다음을 생각해냈습니다: (심지어 혼자서도 ㅋㅋㅋ)

=IF(COUNTIF($A$1:A1,A1)<=1,A1,"")

관심 있는 데이터에 대한 병렬 열을 만들면 문제가 해결됩니다. (예: C1에 붙여넣고 아래로 복사)

크고 작은 기반이 될 수 있는 초기 중복 제거 목록을 제공합니다. 간단한 솔루션으로서 문서에서 발생할 수 있는 불안정한 작업을 방해해서는 안 됩니다. 그리고 나는 vba 없이도 살 수 있습니다. 혼합된 데이터 유형이 있는 경우 IFERROR를 사용하여 예상치 못한 전환을 억제할 수 있어야 합니다.

답변4

@helena4 이 배열 수식을 사용해 보세요

=LARGE(IF(A1:A15 < LARGE(A1:A15,1),A1:A15),3)

그런 다음 누르십시오.Ctrl+Shift+Enter

중복된 내용은 무시됩니다.

관련 정보