具体操作如下:
首先需要一个如下的数据结构 。
文章插图
唱票数G列区域,不能手动输入候选人票数,这样很不方便,所以我们需要一个窗体控件,用点击鼠标的方法来实现唱票 。 在“开发工具-插入-数值调节钮”下图3处,然后拖拽得到一个如下图的控件 。 (下图4处)
文章插图
接着利用控件来控制G3单元格,即第一个候选人 。
选中控件,点击鼠标邮件,在“设置控件格式-链接单元格-G3单元格”,这是点击控件的上下箭头,可以来控制单元格的票数 。 如下动图操作 。
文章插图
【如何利用Excel设计一个唱票统计系统?】
依此类题,选中控件,Ctrl+C/Ctrl+V复制出剩下的五个控件,然后将其单元格链接分别对应后几个候选人对应的单元格 。 如下图动图所示 。
文章插图
接着插入一个图表,将其置于底层,按动控件的箭头,图表的箭头就会随之移动,那么我们这个唱票系统的雏形就有了 。 看下图动图:
文章插图
但小伙伴们对唱票系统有要求,要求前三名的图表柱子能自动变成红色 。 剩余的名次的柱子保持原有颜色 。 而且还要对每个候选人的唱票有最终的汇总数字表达 。 所以我们要在插入图表之间,对数据结构进行改进 。 这也是本例的难点 。
在数据结构后面,新增前三名列(H列)和剩余名次列(G列) 。 然后将下面的公式复制到数据结构中,注意按ctrl+shift+enter来执行这个函数公式 。 然后在进行拖拽填充,这是系统会知道抓住候选人的前三名数字,不是前三名的候选人会用数字0来代替 。
=IFERROR(VLOOKUP(G3,LARGE($G$3:$G$8,ROW($G$1:$G$3)),1,0),0)
具体操作如下:
文章插图
=IFERROR(VLOOKUP(G3,LARGE($G$3:$G$8,ROW($G$1:$G$3)),1,0),0)
该公式是一个数组公式,注意ROW($G$1:$G$3)控制选择需要变红的名词的个数,本例为前三名,如果要前六名变颜色,就要改为ROW($G$1:$G$6).
Large函数来动态获取前三名的区域范围 。
Vlookup来匹配候选人的数值是否能匹配前三名的数值区域,从而获得该数值 。
IFERROR用让剩余没匹配的剩余(不是前三名的)数值为0 。
G列这是候选人数据所在的列 。
搞清楚这个公式,就可以对该数据模板进行随意按需的调整 。
接着我们将不是前三名的数据显示在I列,所以利用如下公式即可搞定 。
=IF(G3-H3>0,G3,0)
文章插图
有了这两个辅助列,然后在插入堆积柱形图,然后对前三列的数据统一设置为红色,即可实现动态的前三名的柱形图显示 。 (看动图操作)
文章插图
最难的地方搞定后,接下来开始对图表进行美化,调整图表的大小尺寸,固定坐标轴的最大高度,也就是唱票可能出现的最高值 。
这里有些技巧:
拖拽图表大小的时候,按住alt键可以与单元格边缘进行吸附 。
调整最后一个控件的位置,然后利用对齐按钮进行快速的对齐分距调整 。
选中坐标轴,按ctrl+1可以快速打开坐标轴最大值设置窗口 。
文章插图
设置坐标轴最大值 。
推荐阅读
- excel 如何把B列中含有A列的相同字符显示在C列?
- 如何设置Excel图表的局部数据标记点
- excel 如何批量合并起止日期到一个单元格?
- 如何控制excel单元格录入相同内容的次数?
- excel2013打印预览功能
- excel对数据编辑的操作方法
- excel2013中插入和删除单元格
- excel中的数据类型
- excel的自动填充功能
- 【健康知识】预防新冠肺炎如何吃得营养?最新防治营养膳食指导供参考