본문 바로가기
공부/컴퓨터 팁

[EXCEL] 엑셀 시트 이름 참조

by ding9 2013. 7. 15.

 

          실험 데이터를 정리하기 위해서 엑셀을 자주 사용하는 편이다. 이런 작업을 위해서는 편리하게 사용을 하고 있는 프로그램이기도 하다..

 

          개인적으로 같은 데이터의 양을 여러가지수로 나온 것을 정리하다보니 시트가 여러장으로 구성된 엑셀 문서를 자주 사용하게 되다보니 시트 이름 참조를 많이 하게 된다.

 

 

 

모든 시트의 데이터를 한눈(?)에 볼수 있도록 정리하는 시트를 만들게 되었는데..

 

검색해보니 INDIRECT함수를 사용하라고 해서 해봤는데 자꾸  '#REF!' 이것만 뜨는게 아닌가.

 

그래서 더 찾아봤는데..

 

쉬운게 있어서 다시 해봤는데 결과는 같았다....

 

그래서 뭐가 문젠지 알아보다가 또다른 방법을 알게되었는데 처음에 찾은건 아예 되지도 않는 것이었음..

 

 

 짜증이나서

 

 

나같이 낚이는 사람이 없길 바라며 테스트를 시작했다....

 

먼저 시트의 이름을 각각 A, ㅁ, 001, 01, 1, 1-1 이라고 썻으며

 

각 시트의 A1에는 순서대로 1,2,3,4,5,6 을 넣었으며  A2에는 A, B, C, D, E, F 라고 넣었다.

 

그리고 각 시트의 데이터를 불러올 시트는 그냥 Sheet1....

 

Sheet1에 A열에는 각 시트의 이름을 참조하기 위해서 시트 이름을 넣었고...

 

B열에는 =INDIRECT([cell이름]&"!A1")

 

C열에는 =INDIRECT("'"&[cell이름]&"'!B1")

 

그리고 D열에는 =INDIRECT(ROW([cell이름])&"!A1")

 

이렇게 넣어서 테스트를 했더니만..

 

결과는 아래와 같이 나왔다.

 

 

 

 

D열에 적용된 수식이 가장 먼저 찾았던 건데... 생각해보니 ROW는 지칭하는 CELL이름이 몇번째 인지 값을 반환해주는 함수( 예를 들면 =row(a1) 은 1을 반환한다, 앞에 영어를 빼고 뒤에 숫자만 반환한다고 생각하면됨)다.. 그러니 그림에서처럼 D열은 값이 나올 수가 없었던 것....

 

만약 시트이름중에 2, 3, 4가 있었다면 그 시트의 a1에 값들이 채워졌을 것이다..

 

근데 여기서 B열을 보면 마지막 시트 이름만큼은 참조가 안되는걸 볼 수 있다...

 

사실 내가 작성한 시트의 이름들이 X-X로 되어 있어서 값이 계속 안나왔던것...

 

그래서 C열의 수식으로 하니 값이 잘 참조 되었다.

 

나처럼 쓸데없는데 시간을 허비할 사람들이 없기를 바라며 글을 쓴다....

 

 

  B열 예 
       =INDIRECT( A2 & "!A1" )
  C열 예
       =INDIRECT( " '"&A2&"' !B1" )

 

 

 

 

 

 

 * 본 블로그는 제가 직접 작성하는 글들로 저는 다른 페이지에서 단순히 자료만 퍼오는 일은 하지 않습니다. 그러니 여러분들께서도 참고자료 정도로 사용하셔도 좋으나 자신이 직접 작성한 글인냥 사용하지는 말아주십시오.

 

 * 글 다 읽으셨나요?? 아래손가락 버튼이 보이시면 눌러주세요~ 저에게 큰 힘이 됩니다..

 

 

 

 

반응형

댓글