그림과 같이 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개의 수식을 복사하여 행 아래에 붙여넣을 수 있어야 합니다. 중복 값은 왼쪽에서 오른쪽으로 처리됩니다.