問:我想制作一張動態的餅圖,數據為四個季度的產品銷量,將四個季度設置成下拉菜單,每選一個季度得到相對應的餅圖,如下圖所示。
答:下面介紹3種方法,本質上大同小異,但效果相同。
制作餅圖的數據如下:
方法1:使用名稱
首先,在單元格G8中設置數據有效性下拉列表,下拉項為“第一季度、第二季度、第三季度、第四季度”,如下圖所示:
效果如下圖:
接下來,定義名稱:
RowNum:=MATCH($G$8,$A:$A,0)
用于查找單元格G8中的數據在列A中出現的行。
Data:=INDEX($A$1:$I$5,RowNum,2):INDEX($A$1:$I$5,RowNum,9)
用于確定單元格G8中的數據對應的具體數據區域。
名稱定義完成后的“名稱管理器”對話框如下圖所示:
然后,選擇單元格區域B1:I2,單擊“插入”選項卡中的“餅圖”,結果如下圖:
最后,在餅圖中單擊選擇數據系列,將公式欄中公式修改為:
=SERIES(,Sheet1!$B$1:$I$1,Sheet1!Data,1)
結果如下圖所示:
至此,圖表制作完成。在單元格G8的下拉列表中選取相應的項目后,餅圖會自動調整。
方法2:使用公式創建的動態區域數據
在單元格A8中設置數據有效性,方法同上,結果如下圖所示:
在單元格B8中輸入公式:
=VLOOKUP($A$8,$A$2:$I$5,COLUMN(),FALSE)
然后向右拉至單元格I8,查找到與A8中季度相對應的數據,如下圖所示:
最后,選擇單元格區域B7:I8,單擊“插入”選項卡中的“餅圖”,結果如下圖所示:
現在,選擇單元格A8中的相應項,餅圖將自動作出調整。
方法3:使用單獨的圖表
首先,設置數據工作表。單元格B8用于鏈接控件返回的數值,C8用于在單元格區域E8:F11中查找相應的季度,用于在單元格B14的公式中查找相應的數據。
在單元格B14中的公式為:
=VLOOKUP($C$8,$A$2:$I$5,COLUMN(),FALSE)
將其向右拉至單元格I14,以查找與單元格C8中的季度相對應的數據。
選擇單元格區域B13:I14,單擊“插入”選項卡“餅圖”,插入一個餅圖,然后將其移至新的圖表工作表中,并插入一個組合框控件,如下圖所示:
在組合框控件中單擊鼠標右鍵,設置控件格式如下圖:
最后的效果如下圖:
現在,在組合框中選擇相應的項目,餅圖會自動調整。
本文同時發布于 [ 完美Excel ] 微信公眾號:excelperfect