有朋友問能不能做成復合餅圖?
效果如下:
這種復合餅圖,更能直觀的看出數據之間的比例、從屬關系。
步驟詳解第一步:插入單選控件
單選控件決定了查詢方式,只有知道了查詢方式,組合框內才出現不同的選項,圖表數據才知道該如果顯示,所以,必須先插入單選控件。
單選控件插入過程如下:
一定要記住:單選控件單元格鏈接到A7,這一點非常重要,后面的所有公式編輯都和這個單元格有關。
第二步:為組合框建立數據源
在F2輸入公式:
=IF(A7=1,OFFSET(A1,1,,3,1),TRANSPOSE(OFFSET(A1,,1,1,3))),并以Ctrl+Shift+Enter組合鍵結束,并向下填充。
如下圖
該公式的含義是:
如果A7=1,F2:F4區域引用A2:A4的值,否則引用B1:D1的值;
公式中OFFSET(A1,1,,3,1)的結果為A2:A4區域,OFFSET(A1,,1,1,3)的結果為B1:D1區域;
TRANSPOSE(OFFSET(A1,,1,1,3)),是指將B1:D1轉置。
此步的結果為:
第三步:插入并設置組合框
【開發工具】——【插入】——【組合框】,并設置數據源區域為$F$2:$F$4,單元格鏈接到B7,如下動圖:
第四步:建立第一餅的數據源
1、選中G2:G4,輸入公式:
=IF($A$7=1,OFFSET($A$1,MOD($B$7+ROW()+1,3)+1,),OFFSET($A$1,,MOD($B$7+ROW()+1,3)+1)),并以Ctrl+Shift+Enter組合鍵結束:
此公式,通過A7、B7,建立了名稱列值與源數據區之間的關系,而且保證了組合框內選的內容位于名稱G2:G4列的最后一個單元格G4,這樣能保證與第二餅(副餅)相連的數據永遠位于第一餅(主餅)的最后一塊。
2、在H1單元格輸入公式:
=IF($A$7=1,SUMPRODUCT(($A$2:$A$4=G2)*($B$2:$D$4)),SUMPRODUCT(($B$1:$D$1=G2)*($B$2:$D$4))),向下填充,計算出與G2:G4對應的各項的總和數據。
如果A7=1,則算各部門的總和,否則計算各月份的總和。
3、此步完成的效果圖:
第五步:創建第一餅
1、選中G2:H4,插入復合餅圖:
2、右鍵,添加數據標簽,并設置數據標簽為系列名+值:
3、但,與第二餅相連的第一餅中的最后一塊,總是顯示“其他”,對此進行修改:在A9單元格輸入公式“=G4&CHAR(10)&H4”,并在開始菜單中設置“自動換行”,A9單元格就永遠顯示第一餅最后一塊的名稱與數值,如下圖:
4、選中第一餅最后一塊的標簽,在地址欄輸入“=sheet1!A9”,則不再顯示“其他”,而是顯示具體名稱:
此步的最后結果:
第六步:設置第二餅圖數據源
1、第二餅圖的數據源名稱:
選中J2:J4,輸入公式:
=IF(A7=2,OFFSET(A1,1,,3,1),TRANSPOSE(OFFSET(A1,,1,1,3))),并以Ctrl+Shift+Enter組合鍵結束:
選中K2:K4,輸入公式:
=IF(A7=1,TRANSPOSE(OFFSET(A1,B7,1,1,3)),OFFSET(A1,1,B7,3,1)),并以Ctrl+Shift+Enter組合鍵結束:
如果A7=2,按月份查詢,則第二餅圖顯示顯示對應月的各個銷售部的數據;
如果A7=1,按部門查詢,則第二餅圖顯示顯示對應部門的各個月的數據;
2、選中J2:K4區域,建立獨立餅圖上右鍵,添加數據標簽,并設置數據標簽為系列名+值,同時設置繪圖區域為無色填充:
3、調整原有復合餅圖的大小:
4、將新建的獨立餅圖覆蓋原有的“第二餅圖”,并組合成一體:
到此,我們明白:所謂的“復合餅圖”其實是一假象,是有一個復合餅圖和一個獨立餅圖復合而成的。
第七步:美化,完工
將圖表美化,即得到本文開頭的雙控件動態復合餅圖。