B |
C |
D |
E |
F | |
2 |
신청과목 |
1차 |
2차 |
3차 |
4차 |
3 |
갑(1) |
10 |
20 |
30 |
40 |
4 |
을(2) |
20 |
30 |
40 |
50 |
5 |
병(3) |
30 |
40 |
50 |
60 |
6 |
정(1) |
40 |
50 |
60 |
70 |
7 |
|
|
|
|
|
8 |
신청과목 |
점수 |
|
|
|
9 |
병(3) |
50 |
|
|
|
10 |
갑(1) |
10 |
|
|
|
11 |
정(1) |
40 |
|
|
|
12 |
을(2) |
30 |
|
|
|
C9 =INDEX(C$3:F$6,MATCH(B9,B$3:B$6,0),MATCH(MID(B9,FIND("(",B9,1)+1,FIND(")",B9,1)-FIND("(",B9,1)-1)&"차",C$2:F$2,0))
; C9 잡아 인원 수 만큼 아래로 복사하면 작업 끝.
이 수식은 먼저 B열 문자열에서 괄호의 위치를 FIND함수 2회로 파악하여 괄호안 숫자(문자열)을 MID함수로 구합니다. 거기 "차"를 붙인 문자열이 C2:F2의 어디에 위치하는지, 그리고 B열의 문자열이 B3:B6의 어느 행에 해당하는지를 MATCH함수 0옵션으로 찾습니다. 행/열 번호를 이제 아니까 INDEX 함수로 데이타를 끌고 옵니다. 이로써 B열의 데이타가 순서가 뒤바뀌든 몇백 차 시험이 있든 유효합니다.
'논리 > 엑셀 프로그래밍' 카테고리의 다른 글
이름 기준 중복 사전 정렬 (0) | 2008.11.13 |
---|---|
두 열 비교, 중복 문자열 출력 (0) | 2008.11.13 |
중복순위를 하나로 계산, 순위 연속 출력 (0) | 2008.11.13 |
IRR 계산기 (일별, 월별, 불특정 구간 적용 가능) (0) | 2008.11.13 |
IRR 계산 (월 단위) (0) | 2008.11.13 |