如何用Excel设计一个唱票统计图表
想设计一个用于统计投票的系统,最好前三名能自动显示为红色,并显示唱票的总计。这是一个典型的按钮控件的图表案例。
操作
步骤1:首先需要一个数据结构,如图7-154所示。
步骤2:需要一个窗体控件,用单击鼠标的方法来实现唱票。依次单击“开发工具→插入”,选择“数值调节钮”,拖曳绘制得到一个控件,如图7-155所示。
图7-154
图7-155
步骤3:选中控件,单击鼠标右键,在弹出的快捷菜单中选择“设置控件格式”,在“控制”选项卡中设置“单元格链接”为C3单元格,这时单击控件的上下箭头可以控制单元格的票数,如图7-156所示。
图7-156
步骤4:选中控件,复制/粘贴出剩下的5个控件,对应本例每一个候选人,如图7-157所示,然后将其“1单元格链接”分别对应到候选人对应的唱票数单元格,如图7-158所示。
图7-157
图7-158
因为要求前三名的图表柱子能自动变成红色,剩余名次的柱子保持原有颜色,而且还要对每个候选人的唱票有最终的汇总数字表达,所以要在插入图表之间对数据结构进行改进,这也是本例的难点。
步骤5:在数据结构后面,新增前三名列(D列)。然后将下面的公式复制到数据结构中:=IFERROR(VLOOKUP(C3,LARGE($C$3:$C$8,ROW($A$1:$A$3)),1,0),0),注意按Ctrl+Shift+Enter组合键来执行这个函数公式。然后进行拖曳填充,这时系统会抓取候选人的前三名数字,不是前三名的候选人会用数字0来代替,如图7-159所示。
图7-159
该公式是一个数组公式,注意ROW($A$1:$A$3)控制选择需要变红的名字的个数,本例为前三名,如果要前六名变颜色,就要改为ROW($A$1:$A$6)。
·LARGE函数用来动态获取前三名的区域范围。
·VLOOKUP函数用来判断候选人的数值是否能匹配前三名的数值区域,从而获得该数值。
·IFERROR用来让没匹配的剩余(不是前三名的)数值为0。
·C列是候选人数据所在的列。
搞清楚这个公式,就可以对该数据模板进行随意按需的调整。
步骤6:将不是前三名的数据显示在E列,所以利用如下公式即可搞定:=C3-D3,如图7-160所示。
图7-160
步骤7:有了这两个辅助列,插入堆积柱形图,如图7-161所示。然后对前三列的数据统一设置为橙色,即可实现动态的前三名的柱形图显示,如图7-162所示。
步骤8:固定坐标轴的最大高度,也就是唱票可能出现的最大值,如图7-163所示。选中图表,单击鼠标右键,将其置于底层,如图7-164所示。
图7-161
图7-162
图7-163
图7-164
接下来开始对图表进行美化,调整图表的大小,这里有些技巧:
·拖曳图表大小的时候,按住Alt键可以与单元格边缘进行吸附。
·调整最后一个控件的位置,然后利用对齐按钮能够进行快速的对齐分距调整。
·选中坐标轴,按Ctrl+1组合键可以快速打开“设置坐标轴格式”面板,设置坐标最大值。
完成的效果如图7-165所示。
图7-165
步骤9:设置柱形图的标签数值,完成唱票图表的制作,如图7-166所示。
图7-166
当然也可以将投票固定在柱形图的上方,利用前面技巧讲到的将单元格内容引用到文本框的方法就可以实现,最终效果如图7-167所示。
图7-167