- excel vba教程:Excel 12中的排序问题(二)
- excel数据分析:XI 关键性能指标,动作和名称集(一)
- excel宏教程:利用Excel函数多角度计算个人所得税
- excel入门教程:用自定义函数获取文本中的信息
如果制作一个最近30天的价格走势图,我们就可以看到该商品最近30天的价格变化,也就可以知道商家是否是挂羊头卖狗肉了。
今天给大家介绍,如何制作一个商品的近30日(以下简称L30)价格走势图,这个走势图包括以下几个内容:
1.显示L30价格走势图,且根据修改价格的日期展示;
2.显示L30的价格均值,方便大家做同类商品之间价格的比较;
3.显示L30价格的最值,包括最大值和最小值;
4.显示L30价格走势的趋势;
5.可以根据不同商品的价格做动态调整;
先看一下效果图:
我们先虚拟一组数据,包括日期,以及每天的具体价格,如下图所示:
要求日期是降序排列,大家注意到,上图的日期并不是连续的,这个也是符合我们的具体商业逻辑运营场景,我们的商品并每天修改价格。 二、制作辅助列
为了方便制作Excel 图表,我们针对上图做一组辅助列,基于我们的需求,我们需要制作一组辅助数据,包括L30的日期、对应的价格、均值以及最值,如下图所示:
上图涉及公式,分别为:
1.日期:=IF(A2>=(TODAY()-30),A2,NA())
判断A列日期是否是L30的,如果是,则显示当前日期,因为我们在A列中已经做降序排列,所以得到的结果也是降序排序;
2.价格:=IF(A2>=(TODAY()-30),B2,NA())
和提取日期一样,这里提取日期对应的价格数据;
3.均值:
=IF(A2>=(TODAY()-30),AGGREGATE(1,6,$J$2:$J$36),NA())
这里用到函数AGGREGATE提取J列对应区域,即价格的均值,且忽略错误值.
4.最值:
=IF(OR(J2=AGGREGATE(4,6,$J$2:$J$36),J2=AGGREGATE(5,6,$J$2:$J$36)),J2,NA())
均值的操作方法类似,这里提取最大值和最小值,即当价格为最值时,自动提取这个价格;
考虑不是所有日期都要显示,所以需要将这组数据设置为一个动态的数据组,具体操作方法如下:
依次单击选项卡上的【公式】→【名称管理器】,分别创建四个名称,如下图所示:
涉及到的公式如下:
1.data1
=OFFSET(Sheet1!$I$1,1,0,COUNT(Sheet1!$I:$I),1)
对应日期项,作为图表的横坐标,而且要考虑过滤掉错误值,即只显示有价格的L30日期;
2.data2
=OFFSET(Sheet1!$J$1,1,0,COUNT(Sheet1!$I:$I),1)
对应价格项,作为图表的纵坐标数据集;
3.data3
=OFFSET(Sheet1!$K$1,1,0,COUNT(Sheet1!$I:$I),1)
对应均值项,作为图表的纵坐标数据集;
4.data4
=OFFSET(Sheet1!$L$1,1,0,COUNT(Sheet1!$I:$I),1)
对应最值项,作为图表的纵坐标数据集;
接下来,我们就可以基于辅助数据集做图表,操作方法如下:
在选项卡上依次单击【插入】→【插入折线图或面积图】→【带数据标记的折线图】,得到的效果如下图所示:
为折线图配置相应的设置,操作方法如下:
在折线图上单击鼠标右键,选择【选择数据】,弹出【选择数据源】对话框,单击【添加】按钮,操作方法如下图所示:
弹出【编辑数据序列】,在下方的【系列名称】和【系列值】编辑框中,依次填下下述信息,操作方法如下图所示:
其中的sheet1!data2,是指sheet1工作表的data2名称数据集,即“价格”数据。
最后单击【确定】按钮,关闭【编辑数据系列】对话框,并返回【选择数据源】对话框,单击右侧的【编辑】按钮,对横坐标数据进行配置,操作方法如下图所示:
弹出【轴标签】对话框,在下方的【轴标签区域】编辑框中输入sheet1!data1,即调整为“日期”数据,操作方法如下图所示:
最后单击【确定】按钮完成输入和关闭当前对话框。
此时图表的样式变成如下图所示:
按照上述的方法,依次添加“均值”和“最值”的数据。得到的效果如下图所示:
四、优化和美化图表
(一)优化“价格”折线
上一篇:excel表格制作:除夕不放假!24年每月上班天数计算公式已出 下一篇:excel宏教程:Excel函数式编程:求右括号位置
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。