1. FAQ
  2. 엑셀(Excel)
  3. AfterEffects
  4. Premiere
  5. Photoshop
  6. ETC

이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.

동적차트 질문드리겟습니다.

차트 조회 수 4236 추천 수 0 2013.05.30 10:47:43

vba를 사용하지않고 차트를 만들어보려구하는데요


양식컨트롤 체크박스의 값이 false 인 값은 차트에 데이터가 안뜨게 하고싶습니다..


제가 지금 만들어놓은 파일은 데이터가 뜨지는 않습니다.. 하지만 그 false인 자리가 공백으로 남아있습니다.ㅠㅠ


어떻게 해야하나요?


댓글 '5'

profile

[레벨:30]아별

2013.05.30 15:22:49
*.104.126.21

신강현님..

2개월만이시네요.. ^^


음.. 지금 만드신 것은 동적차트는 아닌 것 같네요..

보통 동적 차트라고 하면.. 특정 조건에 따라 데이터 범위가 바뀌는 것을 말하는데,

신강현님의 차트는 데이터 영역이 고정으로 되어 있습니다.


체크하지 않은 항목은 제외하고 표시하기 위해서...

배열 수식을 이용해서 체크항목이 있는 것만 위에서부터 정렬시켰습니다. (데이터가 바뀌면 자동으로 다시 정렬됩니다.)

{ =INDEX($F$2:$F$12,SMALL(IF(상품목록<>"",ROW(상품목록)-ROW($H$2)+1,9999999999),ROW(A1))) }


그런 다음.. Offset함수를 사용하여 체크항목이 있는 부분만 대상이 되도록 영역이름을 설정했습니다.


차트항목 : =OFFSET(Sheet1!$K$2,0,0,COUNTIF(Sheet1!$G$2:$G$12,TRUE),1)

차트값 : =OFFSET(Sheet1!$L$2,0,0,COUNTIF(Sheet1!$G$2:$G$12,TRUE),1)


위에서 지정한 영역 이름을 가지고 차트를 구성했습니다.


첨부파일을 참고하시기 바랍니다.


감사합니다.


다운받기 : abyul.com_QnA_20130530_DynamicCharts_1.xlsx



[ 미리보기 ]


abyul.com_0000943.jpg



첨부

[레벨:4]신강현

2013.05.30 18:54:58
*.218.33.33

이게 어떻게 정렬이 되는건지 이해가 안가요.ㅠㅠㅠ

[레벨:4]신강현

2013.05.30 17:26:11
*.218.33.33

ㅎㅎ 그러게요!! 오랜만이네요!! ㅎㅎ

vba만 계속 만지다보니 함수쪽이 약하더라구요.ㅠㅠ 그래서 한번 호기심에 만들어보고싶어서 질문올렷구요!!

INDEX($I$2:$I$12,SMALL(IF(상품목록<>"",ROW(상품목록)-ROW($H$2)+1,9999999999),ROW(A1)))


이부분에서 ROW(상품목록)-ROW($H$2)+1,9999999999),ROW(A1)))

이부분이 이해가 안사네요 .ㅠㅠㅠ

profile

[레벨:30]아별

2013.05.31 11:32:10
*.104.126.21

신강현님..

혹시 배열 수식을 알고 계신가요?

배열 수식에 대한 정보는 아래 게시물을 참고하세요..

http://www.abyul.com/zbxe/64537


암튼.. 수식에 대해서 부연 설명을 드리겠습니다.


우선.. 데이터를 정렬하는 수식 전체입니다.


{ =INDEX($F$2:$F$12,SMALL(IF(상품목록<>"",ROW(상품목록)-ROW($H$2)+1,9999999999),ROW(A1))) }


요약하면 아래와 같죠..

전체 상품목록($F$2:$F$12)에서 몇번째 값을 갖고 오라는 수식이구요..

몇번째는 값이 들어있는 것만 골라내야합니다. 뒤에서 배열 수식을 설명할께요..

=INDEX($F$2:$F$12, 몇번째)


몇번째에 해당하는 수식이 아래입니다. 값이 있는 것만 골라내는 배열 수식이지요..

SMALL(IF(상품목록<>"",ROW(상품목록)-ROW($H$2)+1,9999999999),ROW(A1))


위 수식을 요약해보면..

SMALL( 행번호로변환배열 ,ROW(A1))

ROW(A1)은 아래로 수식을 복사하면 숫자 1부터 1씩 증가하겠죠.. 1,2,3,4

행번호로변환배열에 해당하는 수식은 아래와 같습니다.

IF(상품목록<>"",ROW(상품목록)-ROW($H$2)+1,9999999999)

상품목록에 있는 셀 값들을 하나씩 비교해가면서 배열을 만들어줍니다.

첫번째 값인 "독일주전자"가 값이 ""가 아니니.. "독일주전자"셀의 행 번호(ROW(상품목록))를 갖고 오겠죠.. 2-2+1 = 1

두번째, 세번째는 공백이니까.. 9999999999값을 가질꺼고.. 

네번째 "하우링 스피커"셀은 공백이 아니니까.. "하우링 스피커"의 행번호 - "독일주전자"의 행번호 + 1 해서.. 5-2+1=4


행번호로변환배열에서 차례로 작은 숫자를 갖고오는겁니다.  즉, 값이 있는 행번호를 작은 순서대로 차례로 갖고 오는 거죠..

행번호로변환배열부분을 수식입력줄에서 마우스로 선택한다음, F9를 누르면 아래와 같은 결과를 볼 수 있습니다.

아래 배열에서 작은 순서대로 갖고 오면, 1, 4, 5, 6, 9, 11, 9999999999이 되겠죠..

{1;9999999999;9999999999;4;5;6;9999999999;8;9999999999;9999999999;11}



정리해보죠..

전체 수식을 정리해보면 아래와 같죠..

핵심은 행번호로변환배열인겁니다.

=INDEX($F$2:$F$12, SMALL( 행번호로변환배열 ,ROW(A1)) )


수식을 값들로 확인해보면..

=INDEX($F$2:$F$12, SMALL( {1;9999999999;9999999999;4;5;6;9999999999;8;9999999999;9999999999;11} ,1) )

위 수식에서 일부를 다시 값으로 바꿔보면..

=INDEX($F$2:$F$12,  {1;4;5;6;8;11;9999999999;9999999999;9999999999;9999999999;9999999999} )



첫번째 항목은 배열에서 가장 작은 숫자 1을 가져와서.. 아래와 같이 됩니다.

=INDEX($F$2:$F$12, 1 )


두번째는 2번째로 작은 값인 숫자 4를 가져와서..

아래와 같이 되구요..

=INDEX($F$2:$F$12, 4 )


이해가 되셨으면 좋겠네요..


[레벨:4]신강현

2013.05.31 18:00:55
*.218.33.33

감사합니다!! 어제 이해가 조금 되엇긴햇는데 미심쩍은 부분이 좀 잇어서 글올렷어요!!ㅎㅎ

이제 완전히 이해가 됫네요!! 답변 감사합니다

문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 공지 [공지] 아별닷컴의 엑셀 질문방 폐쇄합니다. 카페 질문방 이용하세요.. imagefile [레벨:30]아별 2015-04-23 40193
662 아별툴관련질문 설치시 오류 질문드립니다. [4] [레벨:1]pritsno2 2013-06-28 2800
661 엑셀수식 일부영역을 참조로 원하는 곳의 값을 표시하는데 그 일부영역을 잘라내기 이동시 오류 file [2] [레벨:4]성투은자 2013-06-27 2365
660 추가기능(AddIns) 비용 배부 후 집계 엑셀 프로그램을 만들고싶습니다. secret [1] [레벨:1]노스트윈즈 2013-06-27 3
659 VBA VBA 실행시 경고 메세지 출력하기 [2] [레벨:5]맑은이슬 2013-06-21 3029
658 엑셀일반 엑셀 2010 인쇄 질문 [3] [레벨:1]ㅂㅂㅂㅂㅂ 2013-06-16 3075
657 엑셀일반 예전에는 그림파일 삽입을 ctrl+v로 붙이지 않았나요? [1] [레벨:0]주주아빠 2013-06-16 2373
656 엑셀수식 연도명으로 만들어지는 시트에서 올해것만 자동참조하기 file [2] [레벨:4]성투은자 2013-06-13 2673
655 엑셀일반 주소 텍스트 나누기 [3] [레벨:1]퀀텀00 2013-06-11 3530
654 셀서식(표시형식) 엑셀 내용 전환 문의 file [8] [레벨:1]neo 2013-06-10 2771
653 엑셀일반 아별님! 감사합니다.다시질문드립니다 file [2] [레벨:2]북곰 2013-06-07 2380
652 엑셀일반 엑셀 링크에서의 문제입니다. [3] [레벨:0]주주아빠 2013-06-07 2161
651 엑셀일반 아별님! 안녕하세요 file [1] [레벨:2]북곰 2013-06-05 1983
650 엑셀일반 안녕하세요 아별님 file [2] [레벨:2]북곰 2013-06-04 2426
649 엑셀일반 3가지 이상의 조건을 만족하는 값을 구할려고 하는데요 함수가 막힙니다. imagefile [4] [레벨:1]늘보 2013-06-04 2837
648 아별툴관련질문 Crtl+Shift+1 [2] [레벨:1]시준우 2013-06-03 2178
647 VBA 닫혀있는 다른파일 데이터 어떻게 참조하나요? [1] [레벨:1]coftw 2013-06-01 2874
646 VBA VBA 서로 다른 파일에서 질문 입니다. [1] [레벨:1]준원이 2013-05-31 2308
» 차트 동적차트 질문드리겟습니다. file [5] [레벨:4]신강현 2013-05-30 4236
644 엑셀일반 글자수 세는 방법 질문입니다. imagefile [4] [레벨:6]파이스 2013-05-27 3300
643 엑셀일반 아별님 도와주세요 ㅜㅜ secret [3] [레벨:2]조기리 2013-05-24 10