http://kin.naver.com/detail/detail.php?d1id=1&dir_id=1050202&eid=hXqVIopd/bGsRBVqrElA/cPuJFxT45Kl
함수여야 한다면 아래를 참고하여 응용해 보세요.
|
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
1 |
제품명 |
등급 |
수량 |
중량 |
|
구분 |
|
|
|
|
|
제품명 |
등급 |
수량 |
중량 |
2 |
ADF003 |
BJ |
40 |
2,320 |
|
BJ |
1 |
1 |
1 |
0 |
|
ADF003 |
BJ |
40 |
2,320 |
3 |
|
BN |
5 |
233 |
|
BN |
1 |
2 |
1 |
1 |
|
|
BN |
5 |
233 |
4 |
|
소계 |
45 |
2,553 |
|
CJ |
1 |
5 |
1 |
2 |
|
|
CJ |
0 |
0 |
5 |
FDGG6 |
BJ |
16 |
928 |
|
CN |
2 |
1 |
1 |
3 |
|
|
CN |
0 |
0 |
6 |
|
CN |
3 |
149 |
|
소계 |
2 |
4 |
1 |
4 |
|
|
소계 |
45 |
2,553 |
7 |
|
소계 |
19 |
1,077 |
|
|
2 |
5 |
2 |
0 |
|
FDGG6 |
BJ |
16 |
928 |
8 |
AFD5FG |
BJ |
16 |
928 |
|
|
3 |
1 |
2 |
1 |
|
|
BN |
0 |
0 |
9 |
|
BN |
7 |
358 |
|
|
3 |
2 |
2 |
2 |
|
|
CJ |
0 |
0 |
10 |
|
CJ |
5 |
290 |
|
|
3 |
3 |
2 |
3 |
|
|
CN |
3 |
149 |
11 |
|
CN |
8 |
524 |
|
|
3 |
4 |
2 |
4 |
|
|
소계 |
19 |
1,077 |
12 |
|
소계 |
36 |
2,100 |
|
|
3 |
5 |
3 |
0 |
|
AFD5FG |
BJ |
16 |
928 |
13 |
|
|
|
|
|
|
|
|
3 |
1 |
|
|
BN |
7 |
358 |
14 |
|
|
|
|
|
|
|
|
3 |
2 |
|
|
CJ |
5 |
290 |
15 |
|
|
|
|
|
|
|
|
3 |
3 |
|
|
CN |
8 |
524 |
16 |
|
|
|
|
|
|
|
|
3 |
4 |
|
|
소계 |
36 |
2,100 |
G2 =G1+IF(A2="",0,1) ; A열을 수치로 구분 표시
H2 =MATCH(B2,F$2:F$6,0) ; B열 데이타를 수치로 구분 표시
I2 =IF(J2=0,1,0)+I1 ; 출력열 대분류 (L열)
J2 =MOD(ROW(A1)-1,5) ; 출력열 중분류 (M열)
L2 =IF(J2,"",INDEX(A$2:A$12,MATCH(I2,G$2:G$12,0))) ; 중분류가 0일 경우 해당 대분류 문자열 출력
M2 =OFFSET(F$2,J2,0) ; 중분류 문자열 행 순서로 표시
N2 =SUMPRODUCT(($G$2:$G$12=$I2)*($H$2:$H$12=$J2+1)*C$2:C$12) ; 해당 데이타를 원본에서 가져 옴
F2:F6에 구분을 미리 만들어 둔 후, G2:H2 잡아 G12:H12까지 복사, N2를 O2에 복사한 후 I2:O2 잡아 아래로 데이타가 다 나올 때 까지 복사하면 표가 완성됩니다.
'논리 > 엑셀 프로그래밍' 카테고리의 다른 글
근무시간 계산 (전일 퇴근시간에 따라 기준시간 보정, 지각시간 계산) (0) | 2008.11.14 |
---|---|
기준일 2~3개월 입사 경과 인원 수 뽑기 (입사, 퇴사일) (0) | 2008.11.14 |
복수조건을 충족하는 중복 없는 숫자의 개수 (0) | 2008.11.14 |
떨어진 교실번호 개체 고유번호 부여, 가로-세로 재정렬 (0) | 2008.11.14 |
투자인력 대비 매출액으로 사업우선순위 결정 (0) | 2008.11.14 |