首页 > 解决方案 > 谷歌电子表格中同一日期的总和值

问题描述

我有一个谷歌电子表格,可以跟踪特定活动的持续时间。想象一下它看起来像这样:

date     | start time | end time | duration 

5/21/18     10:00 AM    10:30AM        30
5/21/18     11:30 AM    12:30PM        60
5/21/18      2:00 PM     2:30PM        30
5/23/18     11:30 AM    12:30PM        60
5/24/18      9:30 AM    11:30AM       120

我想用沿 X 轴的日期和沿 Y 轴的持续时间制作一个图表。但是,我希望每个日期只显示一次,以及该日期的 TOTAL SUM 持续时间。所以,5/21/18 的柱线应该是 120 分钟(即三个 5/21/18 条目的总和),5/22 的柱线应该是 0 分钟(因为没有条目),而柱线5/23 应该是 60 分钟。

如果我按原样制作图表,它将每一行视为一个单独的条目(因此每个 5/21/18 条目都有三个单独的条形图),这对我的目的不起作用,因为我想将条目与相同的日期,并且有没有条目的中间日期的条目。

谢谢!

标签: google-sheets

解决方案


您需要在系列中添加任何缺失的日期。
在这种情况下,只有一天,但也可以是两个、三个或一个月的日期。

归功于系列中缺失的日期:“--Hyde”,Google 文档帮助论坛自动插入缺失的行和填充值

假设:问题中显示的范围从名为“so_53684341”的工作表上的单元格 A1 开始。

1) 创建一个新数据系列,包括任何缺失值
a) 创建一个新工作表。
b) 单元格 A1,插入=arrayformula( { "Date"; datevalue("21/05/2018") + row(1:4) - 1 } )
c) 单元格 B1,插入=arrayformula( {"Start time","End time","Duration"; if( len(A2:A), iferror( vlookup( A2:A, {datevalue(left(substitute(so_53684341!A2:A, " ", "-"), 10 ) ), so_53684341!B2:D }, column(so_53684341!B2:D2), false ), { "", "", 0 } ), iferror(1/0) ) } )
这会在 B、C 和 D 列中创建数据。它复制原始范围中的现有数据。并在任何不存在的日期的“持续时间”列中放置一个零值。您可以根据需要格式化日期列。

2) 创建一个查询作为图表的基础
a) 单元格 F1,插入=query(A2:D5,"Select A, sum(D) group by A label (A) 'Date', sum(D) 'Duration' ") 这将创建一个范围 F1:G5

3) 使用 F1:G5 范围创建图表


在此处输入图像描述


推荐阅读