Excel의 다양한 하이브리드 데이터에서 가장 높은 수치 찾기

Excel의 다양한 하이브리드 데이터에서 가장 높은 수치 찾기

그림과 같이 6개의 영숫자 값 행이 있습니다. 각 행에서 가장 높은 세 개의 숫자 값을 결정한 다음 해당 값과 관련된 문자를 올바른 순서(내림차순)로 표시하는 수식이 필요합니다. 예를 들어, 행 1의 결과는 RES입니다. R이 행에서 가장 높고, E, S가 그 뒤를 따르기 때문입니다. 일치 항목이 있는 경우(위와 같이), 가장 먼저 나타나는 것이 우선권을 가집니다. 저는 Excel의 기본 사용자인데 이것이 저를 당황하게 만들었습니다. 솔루션의 요소를 수행할 수 있지만 결합하려고 하면 마음에 들지 않습니다. 귀하의 도움에 감사드립니다.

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

답변1

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

작동 방식:

내 소스 데이터가 범위 내에 있습니다 A2:F3.

  • B6소스 데이터에서 알파벳을 분리하고 채우기 위해 셀에 이 공식을 작성하세요.오른쪽.

      =LEFT(A2,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A2&"0123456789"))-1)
    
  • 소스 데이터에서 숫자를 분할하려면 셀에 이 공식을 입력하고 B7채우세요.바로 그 다음 아래로.

     =VALUE(RIGHT(A2,LEN(A2)-MIN(FIND({0,1,2,3,4,5,6,7,8,9},A2&"0123456789"))+1))
    
  • 셀에 B10이 배열 수식을 작성하고 채우십시오.오른쪽그런 다음 다음을 누르고 F2완료 Ctrl+Shift+Enter하고 채우십시오.아래에.

    {=LARGE(B7:G7,{1,2,3})}
    
  • B13채우기 에 이 수식을 작성하세요.오른쪽그 다음에아래에.

       =IFERROR(INDEX(B$6:$G$6,MATCH(B10,B7:$G7,0)),"")
    
  • 마지막으로 Cell에 B16이 수식을 작성하고 채웁니다.아래에.

=CONCATENATE(B13,C13,D13)

필요에 따라 수식에서 셀 참조를 조정합니다.

답변2

귀하의 데이터 'R35'가 에 있다고 가정합니다 A1.

하다

H1  --->  =VALUE(RIGHT(A1,LEN(A1)-1))

까지 드래그한 L1다음

N1  --->  =IF(COUNTIF($H1:$L1,H1)=1,H1,H1+0.5)
O1  --->  =IF(COUNTIF($H1:$L1,I1)=1,I1,I1+0.4)
P1  --->  =IF(COUNTIF($H1:$L1,J1)=1,J1,J1+0.3)
Q1  --->  =IF(COUNTIF($H1:$L1,K1)=1,K1,K1+0.2)
R1  --->  =IF(COUNTIF($H1:$L1,L1)=1,L1,L1+0.1)

그 다음에

T1  --->  =RANK(N1,$N1:$R1,0)

까지 드래그한 X1다음

Z1  --->  =INDEX($A1:$F1,MATCH(1,$T1:$X1,0))
AA1  --->  =INDEX($A1:$F1,MATCH(2,$T1:$X1,0))
AB1  --->  =INDEX($A1:$F1,MATCH(3,$T1:$X1,0))

그 다음에

AD1  --->  =LEFT(Z1)&LEFT(AA1)&LEFT(AB1)

마지막으로.. H1:AD1까지 선택하고 드래그합니다 AD6.

AD 열은 귀하가 찾고 있는 것이어야 합니다. 열을 숨기거나 다른 시트에서 수행하여 더 간단하게 보이게 할 수 있습니다.

막히면(공식을 이해하거나 수행하는 데) 공유해 주세요. ( :

도움이 되길 바랍니다.

p/s: +0.5 , +0.4 .. +0.1 이 요구 사항을 충족하는 데 사용됩니다.

가장 먼저 나타나는 사람이 우선권을 얻습니다.

답변3

VBS를 사용하지 않고 6개의 도우미 셀이 필요했습니다. 따라서 데이터가 A1부터 F1까지인 경우:

G1을 다음으로 설정

=INT(RIGHT(A1,2)&"006")

H1을 다음으로 설정

=INT(RIGHT(B1,2)&"005")

I1을 다음으로 설정

=INT(RIGHT(C1,2)&"004")

J1을 다음으로 설정

=INT(RIGHT(D1,2)&"003")

K1을 다음으로 설정

=INT(RIGHT(E1,2)&"002")

L1을 다음으로 설정

=INT(RIGHT(F1,2)&"001")

M1 ~

=LEFT(INDIRECT(ADDRESS(ROW(),MATCH(LARGE(G1:L1,1),G1:L1,0))),1)&LEFT(INDIRECT(ADDRESS(ROW(),MATCH(LARGE(G1:L1,2),G1:L1,0))),1)&LEFT(INDIRECT(ADDRESS(ROW(),MATCH(LARGE(G1:L1,3),G1:L1,0))),1)

해당 7개의 수식을 복사하여 행 아래에 붙여넣을 수 있어야 합니다. 중복 값은 왼쪽에서 오른쪽으로 처리됩니다.

관련 정보