논리/엑셀 프로그래밍

유동참조 SUM (OFFSET, INDIRECT)

섬그늘 2008. 11. 14. 13:38

http://kin.naver.com/detail/detail.php?d1id=1&dir_id=1050202&eid=n7RJF2F82d9iadCu0TKUUdBJyZye5OIu

 

 

A

B

C

D

E

F

G

1

 

2

A

1

2

3

4

5

6

3

B

10

20

30

40

50

60

4

 

 

 

 

 

 

 

5

 

 

 

 

 

6

A

15

 

10

 

 

 

7

B

150

 

100

 

 

 

 

B6 =SUM(B2:OFFSET(A2,0,MATCH(B$5,B$1:G$1,0)))
D6 =SUM(B2:INDIRECT(ADDRESS(ROW(A2),MATCH(D$5,B$1:G$1,0)+COLUMN(A2))))

 

B6:D6 잡아 아래로 복사하면 표가 완성됩니다. B6은 MATCH를 써서 OFFSET에 걸었고, D6는 MATCH를 ADDRESS에 입혀 INDIRECT를 건 결과입니다. 전자는 가장 간결하고 후자는 가장 개념적으로 알기 쉽습니다.