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

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

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

차트 조회 수 4884 추천 수 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
번호 제목 글쓴이 날짜 조회 수sort
공지 공지 [공지] 아별닷컴의 엑셀 질문방 폐쇄합니다. 카페 질문방 이용하세요.. imagefile [레벨:30]아별 2015-04-23 52628
522 엑셀일반 최대값, 최소값 범위 지정 file [레벨:3]읍내꽃미남 2015-01-20 4748
521 VLookup VLOOKUP으로 하이퍼링크 주소 가져오기 [1] [레벨:1]으앙 2014-11-06 4746
520 아별님 질문드립니다. [입사지원서 스펙별 포인트 계산] file [2] [레벨:1]비비빅 2010-01-21 4743
519 시트1의 행과 열의 데이터가 시트2에서는 열과 행의 데이터가되게 하는 방법 [4] [레벨:2]동그니 2009-07-16 4740
518 API 열려있는 ie창 닫기 _ Win32 API, SendMessage, FindWindows, WM_CLOSE [3] [레벨:5]맑은이슬 2013-04-06 4707
517 아별툴 설치 도와주세요 [1] [레벨:1]문교아빠 2009-11-23 4704
516 엑셀일반 바닥글에 & 기호 넣기 문의. [3] [레벨:3]rynoel 2012-05-25 4697
515 그래프 그리기 요청드립니다 (간트 차트의 응용 방법) imagefile [2] [레벨:2]젤코 2011-04-28 4695
514 엑셀일반 엑셀 듀얼모니터 사용 시 붙여 넣기 문제 [2] [레벨:3]읍내꽃미남 2012-01-09 4691
513 미친 용량 해결 방법 없을까요? [1] 김정헌 2010-09-10 4687
512 여러 행에 있는 데이터를 한개의 열에 정렬하는 방법.... file [1] [레벨:1]묵향 2009-07-09 4681
511 아벨님 도와주세요. (파일손상~~!!!. 도와주세요 ㅜㅜ) file [3] 손님 2009-11-22 4679
510 루나입니당 ㅎㅅㅎ; [1] 루나 2010-01-01 4667
509 피벗테이블 엑셀 작업 중, 질문사항 몇개... _ 피벗테이블 계산 필드, 계산 항목 [3] [레벨:4]나카타 2011-09-16 4647
508 VLookup 엑셀에서 특정내용 참조하여 지정된 셀의 내용 교체 방법 imagefile [레벨:1]한스7 2014-03-16 4643
507 엑셀일반 불규칙한 공백을 지닌표를 정리하는 방법 _ 텍스트 나누기를 수식으로 구현해보기 imagefile [5] [레벨:6]파이스 2012-02-28 4637
506 문의 합니다 file [1] [레벨:0]호호천사 2009-08-07 4625
505 엑셀일반 사진에있는 GPS메타정보추출 file [3] [레벨:1]얼씨구 2012-02-24 4624
504 유효성 검사가 걸리질 않아요 [1] [레벨:1]shawn 2009-10-14 4610
503 엑셀이 미쳤나바요 [1] [레벨:1]혜라니 2009-07-16 4608