前言:大家好,之前我在微头条中说过会给大家分享一个excel公式,这篇文章就来兑现一下承诺。下面这幅图就是我当初发的微头条,拖延了蛮久的了。
一、我们的需求是什么?
这是一个数据的图表,其中记载了从2017年初到2020年底的各种天气数据,其中每天的天气数据为7条或者8条,我们的需求就是求出每天气温的平均值。
原始数据表
这就意味着,我们需要需要从列中挑选属于同一个日期的气温,然后再去计算气温的平均值。最后需要大致得到这样的一个结果。
最终结果
那该怎么操作呢?Follow me!
二、简单处理
为了方便演示,我们对数据进行简单的处理,删去其他数据,只保留我们需要的数据。
三、设置单元格格式为时间——数据分列
现在的单元格格式为文本,为了方便后续的操作,我们最好采用时间格式显示的单元格。接下来我们就来设置一下。这里使用是是数据分列的操作方法:
选定第一列——数据选项卡——分列选项
进行下一步——按照空格分列
点击下一步——将第一列设置为日期格式——选择DMY样式
点击第二列——选择不导入此列——完成!
然后就得到了我们想要的结果啦
四、重头戏!Averageif函数的计算
好了,我们开始插入公式,步骤如下:
1、在目标单元格,输入“=”
2、然后找到averageif函数
3、填充参数,第一列range是条件所在的区域,我们需要在时间数据中选择日期相等的,所以我们选择A列,记得要绝对引用哦(按下F4即可绝对引用);
criteria中我们要填写选择的条件,这里应该选择A2单元格;
average_range中就是我们所需要计算的列了,这里我们填写B列,同样需要绝对引用。
点击确定就完成啦。
4、然后我们将指针移到单元格右下角,双击指针变成的小十字“+”,就可以快速完成整个列的填充了。
你以为这样就结束了吗?
不不不,我们最后为了要得到一个整齐的表达,自然要删除多余的行,所以要改进函数。
五、函数改进与表格整理
我们其实只需要要得到这样的一个列就可以了,上面的样式未免过于冗杂,那么该怎么做呢?接下来我们一步步实现。
目标显示
1、添加if函数
=IF(A2<>A3,AVERAGEIF($A:$A,A2,$B:$B),10000)
这个函数的意思是,如果A2单元格和A3单元格中的数据不相等,就输入AVERAGEIF($A:$A,A2,$B:$B)的结果,否则就输入10000。
AVERAGEIF($A:$A,A2,$B:$B)就是我们上一步中的averageif函数。
同样,双击小十字,我们就得到了计算结果。
2、将10000替换为空值。
我们先将结果列复制一次,在粘贴的时候使用“仅粘贴数值”。
使用开始选项卡——替换功能,将10000都替换为空值,如图。
替换操作
替换操作结果
3、删去空行
依然是开始选项卡——查找和选择——定位条件——选择空值——确定
右键删除整行即可。
现在,我们就得到了最终的结果!
删去多余列后的结果如图:
最后的胜利!
好啦,以上就是我那天晚上,琢磨了一晚上的成果了。
40块钱是我在使用averageif的时候被一个小错误卡住,在淘宝询问公式使用时的收费,所以一个公式40块钱的说法是毫不夸张的,真是让我感叹,
知识就是金钱
(不是,知识就是生产力!)
本文其实还包括了很多别的操作方法,以及我的经验总结。如果按照一条公式40块的算法,那我觉得这篇文章远远不止40块钱!
财迷的眼神
这篇文章应该是我第一篇为了完成承诺写作的文章,写了一早晨,果然写文不易啊。其实希望大家能点赞、评论,稍微鼓励下我啦。
期待~点个赞呗
其实也是由于自己学艺不精,各位大神有什么好办法呢,也可以下方评论留言呐。