아! 제가 "문제"를 대충 파악하여 실수가 있었군요...
B9셀 : =RANK(D9,$D$9:$D$16,0)
C9셀 : {=RIGHT(LARGE(--($C$4:$M$4&"."&COLUMN($C$5:$M$5)&TEXT($C$5:$M$5,"00000")),ROW(A1)),5)}
D9셀 : =LARGE($C$4:$M$4,ROW()-8)
같은 것이 있을 경우 hlookup, vlookup, index(match)로는 답을 구할 수 없습니다.
"문항번호" 같은 것이 바로 이 경우입니다. 배열식입니다. C9셀에 =RIGHT(LARGE~~~~~~~,ROW(A1)),5)를 입력한 후 Ctrl+Alt+Enter를 동시에 누르세요.
그러면 { }이 저절로 붙습니다. 다시 말해 { }를 직접 입력하는 것은 아니라는 겁니다.
D9셀을 가장 먼저 해결해야 합니다.
그런데...
Transpose함수를 이용하면 아주 간단합니다.
새로 만들 행, 열이 11행, 2열이므로 G8부터 시작하여 11행, 2열 선택후 G8셀에 =TRANSPOSE(B4:M5) 입력후 Ctrl + Alt + Enter를 동시에 누르세요 (배열식) 이제 데이터 정리하고 Rank를 이용해 순위만 구하면 되겠죠…
또한 님이 주신 문제같은 경우에는 굳이 함수로 하지 않아도 됩니다.
(1) 원본 데이터 복사
(2) 붙여넣기 - 선택하여 붙여넣기 - 행/열바꿈 - 확인
(3) 위와같이 한뒤 함수로 순위만 구하면 됩니다. (구한 답의 데이터 모양은 얼마든지 바꿀 수 있습니다)
(참고) 함수보다 엑셀자체에서 제공하는 여러 기능을 이용하는 것이 보다 간편할때가 있습니다.
함수로 풀어본 것을 첨부하니 참조하세요.
Book1.xls
첫댓글 정말 감사합니다. 너무나 성실히 답변해주어서 고맙습니다. 아직 시도해 보진 않았지만 어쨋든 고맙습니다. 해보고 다시 댓글 올릴께요..^^
님이 알켜주신 transpose로 해보았는데요(잘되었음) , 그 내용을 순위로 데이터 정열이 안되나요? 해보니깐 배열 수식은 변경이 안된다고 나오네요. 그리고 전체를 모두 순위로 말고 오답 한 5-6위 정도 까지만 할려고 하거던요.. 원래의 데이타 자료가 전부(문항) 50문항이고 인원수가 많다보면 일일이 찾는것보다 최다 오답 몇개만 찾을 려고 하는 거예요. 처음 알켜주신 right(large~~~~ 는 아직 해보질 않았어요. 해보고, 다시 글 올릴께요. 어쨋든 좋은 거 배운것 같습니다. 고맙습니다.
님이 말하신 대로 했는데... 잘안되네요.... 그리고 -- 는 뭐예요? 어렵당.....