目标:利用Excel制作历年各国GDP动态图
步骤一:
准备数据
将数据整理成以下格式:(不考虑数据的真实性)
步骤二:
插入控件
①Excel【文件】-【选项】-【自定义功能区】,在右侧自定义功能区框中,勾选【开发工具】,确定。
②【开发工具】-【插入】-【表单控件】,点击【窗体控件(数值调节钮)】,鼠标左键在空白区域拉动,得到数值调节钮的窗体控件。
③右键窗体控件-【设置控件格式】,在【控制】选项卡下,【当前值】默认为【0】,【最小值】设置为0(与最开始的年份2000对应),【最大值】为9(与最大年份2009对应),【步长】设为9(从2000年到2009年,中间有9个步长),【单元格链接】点击到任一空白单元格即可,此处设置为$A$12单元格(鼠标选中单元格后默认为绝对引用)。
这时我们点击控件按钮,A12单元格中的数字就被操控了。
步骤三:
制作动态数据
动态数据的格式为
3.1原理:
①通过控制控件按钮,带动关键单元格A12的数字发生改变,动态图表则以A12单元格为基础设置公式,使得当控件按钮被使用时,图表一起联动。
②把中国数据和其他国家数据分开,是为了在图表显示中,单独设置中国柱形图显示的方便。
3.2设置单元格公式:
①A13单元格,存放年份。
公式=初始年份+步长=2000+A12,与数据显示的年份一致;
②A14及以下单元格显示A13年份对应的国家排名。
用offset控制在源数据中的偏移。
以源数据表内数据起始点A2(排名第一的国家)为基础,向下偏移0,向右偏移两个步长,取一个单元格的数据:
A14=offset(A2,0, $A$12* 2,1,1)
----注意:因为下面的公式需要拖动,A12单格需要绝对引用
③【其他数据】,我们使用if函数来判断,如果不是中国,则与A13年份的数据同步:
B14=if(A14=“中国”,0,offset(B2,0, $A$12* 2,1,1))
----注意:因为下面的公式需要拖动,A12单格需要绝对引用
【中国数据】,我们也用if函数做下判断:
C14=IF(A14=“中国”,OFFSET(B2,0, $A$12*2,1,1),0)
----注意:因为下面的公式需要拖动,A12单格需要绝对引用
这时,当我们控制控件按钮时,已设置公式的区域会相应自动发生变动,数据与我们变换的年份保持了一致。
补充:
offset函数语法
OFFSET(reference,rows,cols,height,width)
OFFSET(A1,3,2,1,1),其中A1是参考系,第2、3个参数分别表示下、右移动的行数和列数,同样向上、左则是负数。
关键记住:先【下】后【右】。
步骤四:
制作图表
①用上一步骤制作好的动态表数据,插入条形图。
②纵坐标的顺序与动态表数据顺序相反,点击纵轴,【设置坐标轴格式】-【坐标轴选项】勾选【逆序类别】。
③条形图间距不一致。点击任一条形柱,将条形全部选中,【设置数据系列格式】-【系列选项】下,将【系列重叠】改为【100%】;
【分类间距】可改为【40%】,使视觉效果更好。
步骤五:
图表美化(略)
资料来源:
http:www.pig66.com/2019/145_0326/17770215.html