如何对指定动态日期范围内带单位的距离数值进行自动求和
动态日期范围带单位距离求和方案
核心实现逻辑
- 提取距离列的纯数值,剥离单位后缀
- 校验日期行的日期是否落在指定的动态范围内
- 对符合日期条件的对应数值做求和计算
各表格工具具体公式
Google Sheets 适用公式
直接在空白单元格输入以下公式即可得到最近3天的距离总和:
=SUM(ARRAYFORMULA(IF((A1:Z1 >= TODAY()-2) * (A1:Z1 <= TODAY()), VALUE(REGEXEXTRACT(A2:Z2, "\d+")), 0)))
参数说明:
REGEXEXTRACT(A2:Z2, "\d+"):提取距离行的数字部分,适配任意单位后缀;如果存在小数距离,将正则部分改为[\d.]+即可VALUE():将提取出的文本格式数字转为可计算的数值类型(A1:Z1 >= TODAY()-2) * (A1:Z1 <= TODAY()):判断日期是否在最近3天(含当日)的范围内,满足条件返回1,不满足返回0ARRAYFORMULA():批量处理整行单元格,无需逐格设置公式
Excel 适用公式
365/2021及以上版本(支持动态数组)
=SUM(FILTER(--TEXTBEFORE(A2:Z2," mi"),(A1:Z1>=TODAY()-2)*(A1:Z1<=TODAY()),0))
低版本Excel
=SUMPRODUCT(--(A1:Z1>=TODAY()-2),--(A1:Z1<=TODAY()),--LEFT(A2:Z2,FIND(" ",A2:Z2)-1))
自定义范围调整方法
如果需要修改为其他指定日期范围,只需替换公式中的日期判断条件即可:
- 将起始判断条件
TODAY()-2替换为你的起始日期引用,比如起始日期存储在F1单元格,改为$F$1 - 将结束判断条件
TODAY()替换为你的结束日期引用,比如结束日期存储在G1单元格,改为$G$1 - 公式中的
A1:Z1、A2:Z2可根据你实际的表格列范围调整
内容的提问来源于stack exchange,提问作者fedora
相关产品推荐
相关产品推荐

