You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在Excel数据透视表中计算日期列与上一日期的差值?

解决Excel透视表计算两个日期字段差值的问题

嗨,我懂你想在数据透视表里算出「录入日期(Date)」和「文件更新日期(Update)」之间的天数差,但用自带的「Difference from」功能没得到正确结果的困扰——这个功能其实更适合处理同一个日期字段内的前后差值,比如不同录入日期之间的间隔,而不是两个独立日期字段的差。下面给你两种简单可行的解决办法:

方法一:先给源数据加辅助列,再做透视表

这是最直观不容易出错的方式,步骤如下:

  • 打开你的源数据表格,找个空白列(比如D列),输入表头天数差
  • 在D2单元格输入公式:=B2-C2(因为Excel里日期本质是序列化的数字,直接用录入日期减去更新日期,得到的就是间隔天数;如果想确保是正数,也可以用=ABS(B2-C2)
    • 如果你习惯用DATEDIF函数,也可以写:=DATEDIF(C2,B2,"d"),注意参数顺序是「早日期, 晚日期, "d"」,这样得到的是正数天数
  • 下拉填充公式到所有行,确认每个条目都算出了正确的天数差
  • 选中整个数据源区域,插入数据透视表:
    • 把「Model」拖到行区域
    • 把「天数差」拖到值区域,根据你的需求设置值汇总方式:比如想看到每次录入的天数差就选「求和」(其实就是显示每个条目),或者想看每个Model的最大/最小差值就选「最大值」/「最小值」

方法二:在已有的透视表中添加计算字段

如果不想修改源数据,可以直接在透视表里新增计算字段:

  • 先插入基础数据透视表:把「Model」拖到行区域(「Date」和「Update」可以暂时拖到值区域确认数据,也可以不拖)
  • 点击透视表内任意单元格,在顶部菜单栏的「分析」(部分Excel版本叫「选项」)选项卡中,找到「字段、项目和集」→「计算字段」
  • 在弹出的对话框里:
    • 输入字段名称:天数差
    • 在公式框里输入:=Date-Update
    • 点击「添加」→「确定」
  • 透视表会自动新增这个计算字段,显示每个Model对应的天数差

关键注意事项

  • 确保你的「Date」和「Update」列是真正的日期格式,而不是文本格式!如果是文本,公式会出错。可以选中列,右键→「设置单元格格式」,确认是「日期」类型;如果是文本,用DATEVALUE函数转换成日期,比如=DATEVALUE(B2)

源数据参考表格

ModelDateUpdate
AFP2018.03.052018.02.26
AFP2018.03.072018.02.26
AFP2018.03.092018.02.26
AFP2018.03.142018.02.26
AFP_FP2018.03.072018.03.06
AFP_FP2018.03.092018.03.09
AFP_FP2018.03.142018.03.09
Arch2018.03.052018.02.22
Arch2018.03.072018.02.22
Arch2018.03.092018.02.22
Arch2018.03.142018.03.13
EL2018.03.052018.03.01
EL2018.03.072018.03.07
EL2018.03.092018.03.09
EL2018.03.142018.03.09
PO HD2018.03.052018.03.02
PO HD2018.03.072018.03.07
PO HD2018.03.092018.03.09
PO HD2018.03.142018.03.14
PO HP2018.03.052018.03.02
PO HP2018.03.072018.03.07
PO HP2018.03.092018.03.09
PO HP2018.03.142018.03.14
PO PL2018.03.052018.03.02
PO PL2018.03.072018.03.07
PO PL2018.03.092018.03.09
PO PL2018.03.142018.03.14
RCP2018.03.052018.02.26
RCP2018.03.072018.02.26
RCP2018.03.092018.02.26
RCP2018.03.142018.02.26
SPW()2018.03.052018.02.26
SPW()2018.03.072018.02.26
SPW()2018.03.092018.02.26
SPW()2018.03.142018.02.26
STR2018.03.052018.02.22
STR2018.03.072018.02.22
STR2018.03.092018.02.22
STR2018.03.142018.02.22
STR - Patriot2018.03.092018.03.07
STR - Patriot2018.03.142018.03.07
TD PL2018.03.052017.07.11
TD PL2018.03.072017.07.11
TD PL2018.03.092017.07.11
TD PL2018.03.142017.07.11

内容的提问来源于stack exchange,提问作者Gangula

火山引擎 最新活动