当前位置:恩施知识网 > 科技创新 > 正文

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」

在利用Excel做数据处理时,日期的处理是非常常见的一块任务。
这天老板找我干活,我居然差点没做出来(这一句在正文里建议删除)。
当然了,是差一点点没做出来!想知道什么问题么?来瞧瞧?
业务场景是这样的,某项产品的注册用户,需要统计一下3个月后的存活情况。系统调取的数据如下(当然这里老王为了说明问题简化了数据,原始数据涉及到具体业务,有将近10万条)。
这里是2018年1月至2019年2月的注册用户数与活跃用户数。举个例子,以序号4-6这三行,统计的是2018年3月

在利用Excel做数据处理时,日期的处理是非常常见的一块任务。

这天老板找我干活,我居然差点没做出来(这一句在正文里建议删除)。

当然了,是差一点点没做出来!想知道什么问题么?来瞧瞧?

业务场景是这样的,某项产品的注册用户,需要统计一下3个月后的存活情况。系统调取的数据如下(当然这里老王为了说明问题简化了数据,原始数据涉及到具体业务,有将近10万条)。

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」

这里是2018年1月至2019年2月的注册用户数与活跃用户数。举个例子,以序号4-6这三行,统计的是2018年3月的注册用户数是4(4 0 0),而该月的活跃用户数是8(2 3 3),这个活跃用户数分别是1月注册的2个,2月注册的3个,3月注册的3个。

现在要求的是2018年1月以来每月的注册用户,在3个月后的活跃占比。以1月为例,统计月的注册用户数是4,而在3个月后,也就是统计月份是4月的活跃用户数是1。所以活跃占比就是25%。

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」

听起来有点绕口,其实也就是如果能做个辅助列,标出注册统计月份是否是注册月份的M 3月份。也就是下面这个效果。在辅助列能判断出来,然后筛选TRUE就是需要的注册月的活跃用户数了。

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」这个要怎么做呢?

难点是这里的两个日期都是不标准的,哎!不标准的日期害死人啊!

不过我们这样想,不标准的不好处理,那我们处理成标准的。那么这两个如何处理成标准呢?下面的骚操作大家注意了,小心闪到腰了。

处理统计月份只需要乘以1,就变成了这个月的第一天,恩,标准的日期。

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」

处理注册月份呢?先用TEXT处理成统计月份一样的格式,然后嘿嘿嘿!

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」

现在两个都是标准日期,要判断是不是相差3个月,岂不是很简单!

不要告诉我两个日期相减判断是否大于90!!!

更不要告诉我两个日期相减判断是否大于3!!!

这里如果你学过DATEDIF,可以判断两个日期的月份差值是不是3。

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」

当然如果你学过其他的日期也可以,比如EDATE,可以把注册月份向后推3个月。

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」

当然如果你愿意,可以把上面的步骤组成到一起做成一个嵌套公式。

至于统计活跃占比,分子分母分开统计再做除法嘛!

利用透视表,先统计每个月的注册用户数,这里需要统计月份和注册用户两个字段。

然后再统计每个月注册的用户在3个月后的活跃数,这里需要注册月份和活跃用户数两个字段,再加上上面做的这个是否M 3筛选TRUE。

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」

因为2018年12月的3个月后是2019年3月,所以上图右表的注册月份只到201811.

然后就是把数据放到一起求个占比就好了。而且这个占比肯定不会超过100%的哦。

上面的方法看起来有点复杂,主要是做完了辅助列后需要做两个透视表,是不是可以直接用函数得到两组数据呢?

也就是直接在右表中写公式直接得到结果。可不可以呢?咱们来试一试咯!

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」

注册用户数很简单,用SUMIFS就好了,但是需要注意,条件列应该是左表中的统计日期。由于两个日期不一样,需要用TEXT处理成一致格式的。

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」

M 3活跃数也很简单,不过条件有两个,注册月份是当前对应的,而统计月份是注册月份 3。由于日期不规范,所以这里处理有点麻烦。

excel日期 函数「这个日期问题差点难倒我了还好我会这么多Excel函数」

这里统计月份对应的条件略复杂,先用TEXT把要求的注册月份处理成能使用EDATE的标准日期,然后再用TEXT处理成统计月份这种格式。

第一种方法步骤略多,但是理解起来稍微简单一些。

第二种方法步骤简单些,但是函数公式复杂一些,需要能灵活应用这些函数。

总结一下

这个问题看起来不复杂,但其实里面所涉及到的函数还是相当丰富。

比如TEXT函数,不仅可以把不规范日期处理成规范格式,还可以把规范日期处理成不规范的样子;

比如DATEDIF这个隐藏函数,学过日期函数的话对这个比较熟悉,但是没学过也没关系。可以用EDATE把注册日期前进3个月;

另外还有这种1*的技巧,还是需要一点积累才能想到的,虽然完全可以用其他方法(你能想到什么方法么?)。

除了以上的方法,你还能想到其他办法么?欢迎 交流!

免责申明:以上内容属作者个人观点,版权归原作者所有,不代表恩施知识网立场!登载此文只为提供信息参考,并不用于任何商业目的。如有侵权或内容不符,请联系我们处理,谢谢合作!
当前文章地址:https://www.esly.wang/keji/90979.html 感谢你把文章分享给有需要的朋友!
上一篇:邮储银行房贷放款时间一般是多久「邮储银行房贷放款时间一般是多久」 下一篇:三伏天去湿气秘方「三月湿气开始大涨不除后患无穷学会这招一分钟去除湿邪」

文章评论