You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel技术咨询:如何自动计算指定时间段的每日价格总和

解决Excel指定时间段总费用自动计算的方案

Hi John, 针对你要自动计算指定时间段总费用的需求,我整理了两种贴合你场景的实用方案,完全符合你“仅依据每日价格计算”的要求:

场景1:表格为每日一行的日期+价格数据

如果你的Excel表格是按日期逐行记录(比如每行对应一个日期和当日价格),那用SUMIFS函数就能一步到位:

假设你的表格结构如下:

  • A列:存储每日日期(例如A2=2024/6/10,A3=2024/6/11,以此类推)
  • B列:存储对应日期的每日价格(例如B2=50,B3=50,B4至B16=58等)
  • D1单元格:输入指定时间段的开始日期(如2024/6/10)
  • E1单元格:输入指定时间段的结束日期(如2024/7/15)

直接在目标单元格输入以下公式:

=SUMIFS(B:B, A:A, ">="&D1, A:A, "<="&E1)

这个公式会自动筛选出D1到E1区间内的所有日期,把对应的每日价格全部加总,结果就是你要的2289€。

小提醒:

  • 确保A列的日期是Excel可识别的日期格式(不是纯文本),否则公式无法正确匹配
  • B列的价格建议设置为数值格式,如果需要显示€符号,直接把单元格格式设为货币格式即可,不用手动输入符号影响计算

场景2:表格为时间段分组的批量价格数据

如果你的表格是按时间段批量记录(比如一行对应一个价格生效的时间区间),那可以用SUMPRODUCT计算每个时间段与指定区间的重叠天数,再乘以对应价格求和:

假设你的表格结构如下:

  • A列:时间段开始日期
  • B列:时间段结束日期
  • C列:该时间段的每日价格
  • D1:指定开始日期,E1:指定结束日期

使用以下公式:

=SUMPRODUCT((A:A<>"")*(MAX(0, MIN(B:B, E1) - MAX(A:A, D1) + 1))*C:C)

公式逻辑拆解:

  • MAX(A:A, D1):取当前时间段开始日期和指定开始日期的较晚值,确定重叠区间的起始点
  • MIN(B:B, E1):取当前时间段结束日期和指定结束日期的较早值,确定重叠区间的结束点
  • MAX(0, ... +1):计算重叠天数(如果两个区间无重叠则返回0,避免出现负数)
  • 最后乘以对应价格,用SUMPRODUCT汇总所有时间段的费用

两种方案都能自动适配你输入的任意时间段,无需手动分段计算,完全满足你的需求~

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 17:27:42