여러 기준 항목 별 순위


0

enter image description here

나는 2 개의 기준으로 나의 학생들의 순위를 매기려고 노력하고있다. 에서 첫 번째 RESULT 그리고 POINT.

이 예에서 결과 순서는 NUNU, NENE, NONO, NANA 및 NINI 여야합니다.

합산해서는 안된다. RESULTPOINT. 온라인으로 검색했기 때문에 순위 결정 방법을 실제로 이해할 수 없습니다.

답변:


2

나는 당신에게 다른 접근 방식을 가진 해결책을 제시하고자합니다 :

enter image description here

이 수식을 셀 J2 (순위 Col) & amp; 그것을 채우고, 마지막으로 오름차순으로 정렬 순위 칼럼 :

=COUNTIF($G$2:$G$6,">"&G2)+1+SUMPRODUCT(--($G$2:$G$6=G2),--($H$2:$H$6>H2))

1

해결책은 아주 간단합니다.

Worksheet Screenshot

에 다음 공식을 입력하십시오. I2 및 Ctrl- 입력 / 복사 - 붙여 넣기 / 열 채우기 :

=G2*10^3+H2

이 값은 최대 허용 값이 POINT 열은 999입니다.

큰 값의 경우 10^3 수식에서 변경해야합니다. 예를 들어 최대 허용 값이 9999 10^4 필요합니다.


열의 값이 무엇이든 관계없이보다 강력한 공식을 원한다면 H, 이것을 사용하십시오 :

=G2*10^CEILING(LOG10(MAX($H$2:$H$6)),1)+H2

"실제"순위를 원한다면 불행히도 위의 수식을 사용할 수있는 방법이 없습니다. RANK() 함수는 배열이 아니라 두 번째 인수에 대한 참조 만 허용하므로 완전히 다른 수식이 필요합니다.

Worksheet Screenshot

에 다음 공식을 입력하십시오. I2 및 Ctrl- 입력 / 복사 - 붙여 넣기 / 열 채우기 :

=1+SUMPRODUCT(($G$2:$G$6>G2)+($G$2:$G$6=G2)*($H$2:$H$6>H2))

동일한 배열이 입력 됨 ( Ctrl + 시프트 + 들어가다 ) 공식은 다음과 같습니다.

{=SUM(1,--($G$2:$G$6>G2),($G$2:$G$6=G2)*($H$2:$H$6>H2))}

물론, 테이블을 정렬하는 것이 요구된다면, 가장 간단한 해결책은 다중 컬럼 정렬을하는 것입니다 :

Worksheet Screenshot


모든 좋은 로빈스, 그냥 5,4,1,2,2와 같은 칸에 나타나게 할 수 있고 학생 이름의 순서는 움직이지 않습니다. 그 이유는 선생님이 마크를 채우고 나서 현재 시간 동안 순위가 직접 나타나기 때문입니다. (구글 시트를 온라인으로 채울 것입니다. Google 시트를 열면이 공식을 바로 사용할 수 있습니다) 시험의 학생 순위입니다. 나는 두 가지 첫 번째 수식이 great.i 실제로 수를 사용하여 RANK 수식을 사용할 수 있다고 생각하지만,이 1 단계 수식이 있습니까? TQ 너무 많은 시간 동안
cliffe

불행히도 이러한 수식을 RANK() 기능. 저는 설명에 "올바른"순위를 매기는 2 개의 새로운 수식을 추가했습니다. 수식이 Google 스프레드 시트에서 작동 할 것으로 생각됩니다. 유일한 문제는 배열에 입력 된 수식을 ARRAYFORMULA() 기능이 올바르게 작동합니다.
robinCTS

@cliffe 방금 당신이 어떻게 생성하는지 깨달았습니다. RESULTPOINT 열 값 ;-) 나는 하나의 수식 솔루션을 생각해 낼 수 있을지 알게 될 것이므로이 두 열은 더 이상 필요하지 않습니다. 나는 이전 질문에 대한 별도의 답으로 해결책을 게시 할 것입니다.
robinCTS

안녕하세요, robinCTS, 예 .. 저는 A, B, C에서 결과를 생성합니다. C는 더 높은 순위에 A의 학생을 만들고, 그 다음에 포인트가오고, 포인트는 마크의 합계입니다. 라이언 80 A 10 E, 마크 70 B 70 B, 잭 20 E 90 A) .. 등급은 잭, 라이언, 마크가 될 것입니다. 먼저 A (RESULT), (POINT) (RYAN은 90 점, ZACK은 110 점을 받았다. 마지막으로 A 점은 높지만 점수는 높다). 우르의 친절은 정말로 나에게 도움이된다. 위의 예에서 나는 간단하게 cloumn 포인트를 숨 깁니다. u 단 하나 공식을위한 시간을 얻는 경우에, 나는 말문이 사람이다!
cliffe

0

그래서 이전 질문을 보면서 A의 수를 기준으로 순위를 매기고 B의 수를 기준으로 순위를 매기고 점수의 합계를 토대로 해당 순위를 매기기를 원합니다 각 과목마다.

이를 염두에두고 다음을 수행하는 도우미 열 수식은 없습니다.

Worksheet Screenshot

배열 입력 ( Ctrl + 시프트 + 들어가다 ) 다음 공식을 M5 나머지 열에 복사하여 붙여 넣기 / 채우기를 수행하십시오. { 그리고 } ) :

{=
SUM(
  1,
  --(
    MMULT(($B$5:$L$9="A")*6^2+($B$5:$L$9="B")*6^1+($B$5:$L$9="C")*6^0,--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9)))))
    >INDEX(MMULT(($B$5:$L$9="A")*6^2+($B$5:$L$9="B")*6^1+($B$5:$L$9="C")*6^0,--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9))))),1+ROW()-ROW($B$5:$L$9))
  ),
  (
    MMULT(($B$5:$L$9="A")*6^2+($B$5:$L$9="B")*6^1+($B$5:$L$9="C")*6^0,--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9)))))
    =INDEX(MMULT(($B$5:$L$9="A")*6^2+($B$5:$L$9="B")*6^1+($B$5:$L$9="C")*6^0,--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9))))),1+ROW()-ROW($B$5:$L$9))
  )
  *(
    MMULT(IFERROR(--$B$5:$L$9,0),--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9)))))
    >INDEX(MMULT(IFERROR(--$B$5:$L$9,0),--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9))))),1+ROW()-ROW($B$5:$L$9))
  )
)}

다음은 위 공식의 동일한 축소 버전입니다. 나는 강력히 조언한다. 아니 그것을 사용하는 , 그러나 prettified 수식 버전을 대신 사용하십시오. 이렇게하면 공식을 많이 만들 것이고, 많은 유지 관리가 더 쉽다.

{=SUM(1,--(MMULT(($B$5:$L$9="A")*6^2+($B$5:$L$9="B")*6^1+($B$5:$L$9="C")*6^0,--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9)))))>INDEX(MMULT(($B$5:$L$9="A")*6^2+($B$5:$L$9="B")*6^1+($B$5:$L$9="C")*6^0,--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9))))),1+ROW()-ROW($B$5:$L$9))),(MMULT(($B$5:$L$9="A")*6^2+($B$5:$L$9="B")*6^1+($B$5:$L$9="C")*6^0,--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9)))))=INDEX(MMULT(($B$5:$L$9="A")*6^2+($B$5:$L$9="B")*6^1+($B$5:$L$9="C")*6^0,--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9))))),1+ROW()-ROW($B$5:$L$9)))*(MMULT(IFERROR(--$B$5:$L$9,0),--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9)))))>INDEX(MMULT(IFERROR(--$B$5:$L$9,0),--(0<ROW(INDEX(M:M,1):INDEX(M:M,COLUMNS($B$5:$L$9))))),1+ROW()-ROW($B$5:$L$9))))}

설명:

prettified 수식의 구조를 보면, 그것은 본질적으로 "적절한"랭크 배열 - 이전 수식에서 입력 한 수식과 동일하다는 것이 분명해진다.

{=SUM(1,--($G$2:$G$6>G2),($G$2:$G$6=G2)*($H$2:$H$6>H2))}

와 더불어 RESULTPOINT 도우미 열이 MMULT(…) 함수 및 단일 셀 참조를 INDEX(MMULT(…),1+ROW()-ROW($B$5:$L$9))

어떻게하면 MMULT() 함수가 여기에 사용되면 간단한 사용법을 내 대답 다른 질문으로

더 많은 성적을 수식을 조정하는 방법은 상당히 분명해야합니다. 예를 들어, D, +($B$5:$L$9="D")*6^0 다른 사람들의 끝까지, 그리고 다른 힘을 증가시킨다.

이전 질문에 대한 대답에서 언급했듯이, 표가 더 많은 주제로 확장되면 6 테이블에있는 새로운 수의 피사체보다 적어도 하나 이상 많아야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.