SUMPRODUCT 함수에 들어가는 인수의 범위는 모두 동일해야 합니다. 그 중 하나라도 범위가 다를경우 SUMPRODUCT 함수는 #N/A 오류를 반환합니다.
예를들어, SUMPRODUCT(A1:A100, B1:B99, C1:C100) 으로 입력시, 두번째 인수인 B1:B99 범위의 넓이가 다르므로 SUMPRODUCT 함수는 #N/A 오류를 반환합니다. 따라서 항상 데이터가 입력되는 날짜열(B열)에서 셀 개수를 참고하여 rng소계정 범위가 확장되도록 수식을 수정하였습니다.
이후 M4셀에 피벗테이블을 삽입한 뒤, [날짜] 필드를 행으로 끌어옵니다. 날짜행을 우클릭하여 [그룹]을 선택한 뒤, [월]에만 체크하고 '확인'을 눌러 마무리합니다.
피벗테이블의 [날짜] 행에서 분기와 연은 제외하고 ‘월’에 해당하는 자료만 행에 표시합니다.이후 아래 표를 참고하여 G4셀부터 L4셀까지는 머릿글을 추가하고, 그 아래에는 각 수식을 넣어 데이터를 완성합니다.
열
머릿글
수식
G
월
A5&"월"
H
수입
B5
I
지출
C5
J
수입클릭
=IF($M$5=G5,H5,0)
K
지출클릭
=IF($M$5=G5,I5,0)
L
선택월
=IF($M$5=G5,A5,0)
G4셀부터 K16셀까지 데이터가 입력된 범위(월~지출클릭)을 선택한 뒤, ‘묶은 세로 막대그래프’를 생성합니다.이후 ‘차트제목’, ‘계열’, ‘눈금선’, ‘세로축’ 은 차트에서 지워줍니다. 차트를 우클릭 한 뒤 [차트종류변경]으로 이동하여 [수입클릭]과 [지출클릭]을 보조축으로 설정합니다.
클릭차트를 만들기 위해 ‘수입클릭’과 ‘지출클릭’은 보조축에 설정합니다.
이후 피벗테이블을 선택한 뒤 [삽입] - [슬라이서]로 이동합니다. 슬라이서 목록에서 '날짜 월'에 해당하는 슬라이서를 추가한 뒤 버튼을 클릭하면 차트에서 선택한 월의 색상만 강조되는 것을 볼 수 있습니다.
가계부 대시보드의 흐름인 '월별 수입/지출' ⇨ '선택된 지출의 계정과목' ⇨ '선택된 계정과목의 소계정상세' 단계에서 마지막 단계로 소계정별 지출상세를 나타내는 차트를 추가합니다.
차트를 만드는 단계는 이전과 동일합니다. 피벗테이블을 생성한 뒤, [구분]을 필터로 추가합니다. 이후 필터에서 '지출'만 선택하면 피벗테이블에는 '지출’에 해당하는 데이터만 표시됩니다.
이후 [소계정]을 행으로 가져오면 지출에 해당하는 소계정목록이 피벗테이블에 나열됩니다. 또한 총합계를 숨기기 위하여 '피벗테이블 선택' - [디자인] - [총합계] - ‘행 및 열의 총합계 해제’를 선택하여 총합계를 숨겨줍니다.
지출에 해당하는 소계정만 나열됩니다.
우리가 피벗테이블로 출력하고 싶은 내용은 ‘선택된 계정과목’의 소계정별 지출상세입니다. 따라서 이전에 생성했던 [계정과목 슬라이서]를 방금 생성한 [소계정 피벗테이블]에 연동합니다. 소계정 피벗테이블을 선택한 뒤 [분석]탭을 클릭합니다.
그럼 좌측 상단에 [피벗테이블 이름]이 나타납니다. 해당 피벗테이블 이름을 기억하세요. (또는 피벗테이블의 이름을 원하는 값으로 변경해도 됩니다.)
피벗테이블을 클릭한 뒤, [분석] 탭으로 이동하면 선택된 피벗테이블의 이름을 확인할 수 있습니다.이후 [계정과목]슬라이서를 우클릭한 뒤, [보고서 연결]을 선택합니다. 그럼 아래와 같이 생성했던 피벗테이블이 나열되며, 피벗테이블 목록중 [소계정]에 해당하는 피벗테이블을 선택한 후 확인을 눌러 창을 닫습니다.
계정과목 슬라이서와 소계정 피벗테이블을 연결합니다.
이후 계정과목 슬라이서에서 버튼을 클릭하면, [계정과목]과 [소계정]에 해당하는 2개의 피벗테이블이 동시에 갱신됩니다.
계정과목 슬라이서를 클릭하면 2개의 연결된 피벗테이블이 동시에 업데이트됩니다.
이제 소계정별 지출상세를 나타내기 위한 차트 데이터 범위를 생성합니다. 아래 수식을 참고하여 이전과 동일하게 데이터범위를 생성합니다. 데이터범위를 만드는 자세한 과정은 영상강의를 참고하세요.
소계정 지출상세를 나타내는 데이터 범위까지 잘 만드셨나요? 고생 많으셨습니다. 이제 정말 마지막단계로, 소계정 지출상세를 나타내는 동적차트를 생성합니다. 이전에 만들었던 2개의 차트는, 차트에 들어가는 데이터의 범위가 일정했습니다. 하지만 소계정차트는 선택된 계정과목에 따라 차트에 들어가는 데이터범위가 달라집니다.
따라서 차트의 데이터범위가 동적으로 변하는 동적차트로 만들어줘야 합니다. 동적차트 만들기에 사용되는 함수 공식 및 자세한 동작원리는 INDEX 동적범위 만들기 강의를 참고하세요.
일반 데이터 범위로 차트를 생성하면 빈 계열값이 차트에 출력되므로, 동적차트를 생성합니다.
우선 이전 단계에서 만든 소계정 지출상세 데이터 범위를 선택한 후, ‘파이형 차트’를 생성합니다. 생성된 차트의 계열을 보면, 값이 입력되지 않은 빈칸의 경우 아래와 같이 ‘0’으로 계열값이 나열된 것을 볼 수 있습니다.
항상 소름끼치는 강의 감사합니다. 실제적인 업무에 도움이 많이 되어 열심히 공부하고 있습니다.
문의메일을 넣었는데, 제대로 전달이 된 건지 몰라서 댓글로 문의사항 남겨봅니다..ㅠㅠ
가계부입력 피벗테이블을 만들고 '월'로 그룹을 짓는데 결과가 1-12월까지 나오는 것이 아니라 1-2월까지만 나오네요..ㅠㅠ
강의영상에서는 분기, 연, 월이 함께 나오게 되어 있는데 월만 나오고요..
이름관리자에서 동적범위도 확인을 해봤는데, 이상이 없었습니다.
그래서 비교해보려고 피벗테이블을 동적범위가 아닌 수동으로 범위를 잡아서 만들어보니 이상없이 분기, 연, 월이 잡히고 그룹화가 잘 되었습니다..
2가지 경우, 다른 점은 범위를 잡을 떄 동적 범위로 잡았느냐, 수동으로 잡았느냐의 차이인데 어떤 것이 문제인지 모르겠습니다.
(데이터는 2019년 1월부터 2020년 1월까지 입력해서 해보았습니다.)
오빠두엑셀작성자2020.02.05 21:35
안녕하세요?^-^
만약 동적 범위가 잘못 적용 된것으로 의심된다면, 아래 순서로 오류처리를 해보시겠어요?
1. Ctrl + F3 키로 이름관리자를 실행합니다.
2. 동적범위를 클릭한 뒤, 동적범위가 올바르게 적용되었는지 확인합니다.
3. 만약 동적범이가 잘못 적용되었다면, 초록색 테두리가 2월까지만 표시됩니다.
4. 동적범위에 사용된 COUNTA 인수가 맞게 입력되었는지 확인해보세요.
제 답변이 도움이 되셨길 바랍니다.^-^
감사합니다.
네스프레소2020.02.06 09:29
안녕하세요 강의 너무 잘 보고 있습니다 감사합니다!
저도 아래(인지 위 인지)분과 비슷하게 1-12월이 아닌 1-7월 까지만 피벗테이블이 나옵니다
rng가계부입력 함수는 3번 확인했는데 강의와 동일합니다
혹시 날짜 서식과 관련이 있나요?
피벗테이블 그룹을 보면 시작과 끝이 2019 1월에서 2019년 7월까지로 한정되어 있는데...
도와주세요 오빠두님~
오빠두엑셀작성자2020.02.06 19:07
안녕하세요?^^
마찬가지로 작성하신 이름정의범위를 선택하셔서, 범위가 올바르게 적용되었는지 확인해보시겠어요?
Ctrl + F3 키를 누르면 이름관리자가 나옵니다.
원하는 범위를 클릭하시면, 해당 범위가 '초록색 점선' 테두리로 표시되는데요.
범위가 잘못지정되었다면 7월까지 데이터만 범위로 선택될겁니다.
그럴경우 동적범위 공식을 수정해서 다시 적용해보시겠어요?
네스프레소2020.02.08 16:20
초록색 점선은 제가 추가로 입력하는 항목에 따라 바뀝니다 함수도 여러번 확인했습니다 ㅠㅠ
제가 사용하는게 맥인데 맥이라서 그런건가요 ㅠㅠ 이부분만 안되는데 너무 답답하네요
엑셀배우자2020.02.15 23:06
영상보면서 제대로 따라했는데.. 소계정 피벗테이블에서.. 그 달에 없는 항목이 있는 이유가 뭘까요??
파일에 보시면 가계부 입력 시트에 6월 건강보험 에는 여행 밖에 없는데..
파일에 보시면.. 문화생활, 약 이 두개가 출력이 됩니다.. 이 항목은 6월에 없는데.. 왜 그런건가여...?
그러다 보니 동적 차트에도 똑같이 범례에 나오게 됩니다..ㅠㅠ
이거좀 해결해주세요 ㅠㅠ
즉, 다른 월에 있는 소계정 항목이 다 나옵니다.. 건강보험 뿐만 아니라.. 물론 금액은 0 으로 나오긴 하긴 하는데.. 선생님 하시는거 보면 다른 월에 있는건 안나오는거 같은데..
오빠두엑셀작성자2020.02.16 06:50
안녕하세요~^^
1. 소계정 항목 오류는 해당 포스트 첫번째 패치노트 공식을 확인해보시겠어요?
2. 월에 없는 소계정항목이 표시되는 것은, 계정과목 슬라이서의 보고서연결이 잘못되어있는듯 합니다 ^^; 다시 한번 확인해보시겠어요?
현재 댓글 첨부파일은 서버문제로 업로드가 불가능한 상황입니다.
첨부파일은 엑셀 커뮤니티를 이용해주시길 부탁드리겠습니다 ^-^*
제 답변이 도움이 되셨길 바랍니다.
감사합니다!
엑셀배우자2020.02.16 12:05
1. 이미 패치노트 보고 바꿔도 봤습니다. ㅠ
2. 피벗테이블 번호 확인하고 보고서 연결 잘했는데 ㅠㅠ
엑셀 커뮤니티에 글 어떻게 쓰나요..? 글쓰기 버튼을 암만 찾아도 못찾겠어요 ㅠㅠ
김반미2020.02.17 16:29
선생님 안녕하세요ㅠ_ㅠ 강의를 응용하여...
피벗테이블 원본데이터를 동적영역(?)으로 만들었고 슬라이서에 피벗테이블 연결했습니다.
그런데 로우데이터를 추가하면
"워크시트의 수식에 일부 잘못된 참조가 있습니다.
수식에서 경로, 통합문서, 범위, 이름, 셀 참조가 올바른지 확인하십시오"
라는 오류가 뜹니다.
그런데 피벗테이블 새로고침하면 해결이 되어요.
이름관리자에 offset 영역은 잘 설정되어 있는데,
피벗테이블 새로고침을 무조건 해야 피벗테이블에 영역이 반영이 되는데...
새로고침없이 반영할 수 있는 방법은 없나요?
뭔가 잘못 따라한걸까요...?ㅠㅠ
오빠두엑셀작성자2020.02.19 05:54
안녕하세요~^^
새로운 로우데이터를 추가할 때 오류가 발생하는 것은 작성하신 동적범위 수식에 오류가 있어서 그런것 같습니다. 수식을 다시 확인해보시겠어요?
데이터가 새로 입력될 때 피벗테이블을 자동으로 새로고침 하는 내장기능은 없습니다.
대신 VBA코드 한줄로 쉽게 해결하실 수 있습니다.
아래 코드를 VBA 가계부입력 시트 모듈에 추가해보시겠어요?^^
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ThisWorkbook.RefreshAll
End Sub
제 답변이 도움이 되셨길 바랍니다.
감사합니다.
SEANPAUL2020.05.09 09:30
고민했던 부분인데, 감사합니다.
Appado2020.02.19 00:43
안녕하세요!. 너무 유익한 강의 감사합니다. 많이 어렵지만 너무 좋네요.
이걸로 통장관리를 하려고 하는데 20년1월1일자로 기록을 시작한다면 19년12월31일 남아있던 통장 잔액은 어떻게 합산해야할까요?
1월1일부터 시작하면 잔액이 안 맞을 것 같아서요! 그렇다고 19년부터 쓴다면 또 18년도 금액이 합산 안 되니까 반복..
잔액 기록하는 곳은 따로 없더라고요. 알려주세요!
항상 감사드립니다!
오빠두엑셀작성자2020.02.19 06:03
안녕하세요?
최초잔액을 입력하시려면, 19년 12월 31일자로 '이동' - '계좌이동(+)' 항목으로 해당 계좌에 입금을 잡아주시면 됩니다 ^^
제 답변이 도움이 되셨길 바랍니다.
감사합니다.
정찬익2020.02.19 09:12
빠른 답변 너무 감사합니다!!해결되었습니다!! 너무 좋은 자료 감사합니다.
Appado2020.02.20 16:28
저번에 답변주셔서 잘 수정 중입니다.
제가 영상을 꼼꼼히 볼 시간이 없어서..소계정 지출 상세가 10개까지만 허용되는 걸로 영상에서 봤었습니다만 혹시 이게 10개가 넘어가면 오류가 발생하는지요?
10개가 넘어가도록 작동하게 하려면 따로 추가 설정을 해줘야하나요?
Appado2020.02.20 17:29
그리고 대시보드에서 통장을 추가했는데 첫째 통장의 잔금이 나오지 않네용.
죄송해요 너무 많이 물어봐서ㅠ
오빠두엑셀작성자2020.02.20 23:21
안녕하세요?^^
통장 잔금은 '차트자료'시트와 연결됩니다.
차트자료 시트를 다시 확인해보시겠어요?
감사합니다.
Appado2020.02.21 00:15
감사합니다! 해결했어요!!!
상세 내역이 많아져서 원형 그래프로는 답이 안 나오네요 ㅠㅠㅋㅋ
너무 좋은 자료 감사합니다!
오빠두엑셀작성자2020.02.20 23:17
안녕하세요? ^^
소계정지출상세는 원하시는 만큼 추가할 수 있습니다.
따로 설정을 변경하실 필요는 없습니다.
감사합니다.
sailer00002020.02.24 22:13
엑셀 초보 중에 초보입니다.. 우연히 검색 중 가계부와 비슷하게 관리할 사항이 있어
나름대로 응용(?)하여 만들어보고 있는데 하면 할수록 막히네요 ㅠㅠ
바쁘시겠지만 아래 내용 확인부탁드려도 될까요??
각 팀별로 구분(장갑류, 보호복) 구매현황은 그래프로 나타내고, 슬라이서도 삽입하고 어느정도 완성되었는데요..
그 하위분류인 중분류(장갑1,장갑2,장갑3,의류1)도 상단의 구분(장갑류, 보호복) 그래프와 연동시키고 싶은데
빨간색셀의 수식을 어찌반영해야할지 몰라서 문의드립니다...ㅠ
혹시 수식을 알려주실 수 있으실까요??
참고로 팀, 구분, 중분류, 수량 항목 모두 동적범위(?) 설정해놓았습니다.. ex팀10, 구분10, 중분류10, 수량10
바쁘신데 확인한번 부탁드리겠습니다....
오빠두엑셀작성자2020.02.25 13:22
안녕하세요~ ^^
중분류 소분류 연동은 수식으로 해결하는것이 아닌, '슬라이서'의 '보고서 연결'로 해결하셔야 합니다.^^
중분류항목의 슬라이서를 소분류항목의 피벗테이블과 연동하시면 중분류로 선택된 값만 소분류 피벗테이블로 출력됩니다.
위 단계만 해결되신다면, 나머지 그래프를 출력하는 것은 소계정항목에서 사용한 IF 함수와 동일한 방법으로 처리해주시면 되겠습니다 ^^
제 답변이 도움이 되셨길 바랍니다!
감사합니다.
sailer00002020.02.25 18:09
빠른 답변 정말 감사드립니다...
보고서 연결로 연동시켜야 되는 거는 알겠는데..
첫번째 사진의 붉은색 항목에 수식을 어떤걸로 반영을 해야할지가 궁금해서요..ㅠ
수식을 잘못걸었는지... 계속 값이 0으로만 표현이 되는데... 혹시 봐주실수 있는지 부탁드립니다..
정말 감사드립니다!!~
오빠두엑셀작성자2020.02.27 13:19
안녕하세요?^^
작성하신 수식 중, L5:L7열에 SUM을 사용하셨는데, 실제 L7 셀에는 숫자가 아닌 '생산3팀'이라는 텍스트가 들어있습니다. 이부분 수정하시면 될듯 하네요.
제 답변이 도움이 되셨길 바랍니다.
감사합니다 ^^
sailer00002020.02.28 17:12
바쁘신데도 답변해주셔서 정말 감사드립니다!!~
앞으로 강의도 듣고해서 엑셀 스킬 늘려보겠습니다!!~
진심으로 감사드립니다^^
안녕하세요. 강의 잘 보고 잘 이용하고 있습니다. 먼저 정말 감사하단 말씀드립니다.
몇 시간을 꿍꿍하다. 이렇게 댓글 남깁니다. 소계정 합산이 계속 오류가 나오네요..
계정 과목은 계산이 잘되어 나오는데, 소계정 이름관리자를 몇번 고쳐도 계산이 잘 안되네요..
멀 다시 체크를 해봐야 하는지 문의 합니다..
오빠두엑셀작성자2020.03.13 15:13
안녕하세요~^^
해당 포스트 윗부분의 첫번째 패치노트,
- rng소계정 범위를 COUNTA 함수를 이용한 동적범위로 변경
를 확인해보시겠어요?
감사합니다!