代码之家  ›  专栏  ›  技术社区  ›  Paramone

使用google电子表格公式动态获取运行分钟数

  •  0
  • Paramone  · 技术社区  · 6 年前

    我用ifttt制作了一个简单的小部件,当我单击它时,它会在google电子表格中记录日期和时间。

    参见示例: enter image description here

    我想做的是:在 D3 这样它就可以从 C2 C3 几分钟后: 0:01

    把公式放进去 C3类 让我明白:

    =ADDRESS(ROW()-1,COLUMN() -1,4) = 指挥控制

    =ADDRESS(ROW(),COLUMN() -1,4) = C3类

    意思是,如果我要做的话 =C3-C2 我会得到 0:01:00 .

    但是,当我做类似的事情时: =(ADDRESS(ROW(),COLUMN() -1,4)-ADDRESS(ROW()-1,COLUMN() -1,4)) (应该是C3-C2)我得到一个错误: Function MINUS parameter 1 expects number values. But 'C3' is a text and cannot be coerced to a number.

    我尝试使用value()来获取c3和c2的值,然后得到差异,但现在我有点迷失了。

    你可能会注意到我对google电子表格公式没有什么经验

    TLDR; D3号 应该告诉我

    (current column -1 )(current row) (current column -1)(current row -1) 几分钟后

    ( C3-C2 )

    1 回复  |  直到 6 年前
        1
  •  1
  •   Diego    6 年前

    你需要使用 TIMEVALUE() ,它会将“time”字符串转换为时间值,您还需要将“Date”和“time”值组合起来才能得到准确的计算结果(否则将假定所有值都是相同的日期)。

    由于需要手动输入单元格引用,因此 ADDRESS() 有道理,但这只返回单元格地址的字符串值你必须使用 INDIRECT() 以获取存储在该地址中的值。

    =(INDIRECT(ADDRESS(ROW(),COLUMN()-2,4))+TIMEVALUE(INDIRECT(ADDRESS(ROW(),COLUMN()-1,4))))-(INDIRECT(ADDRESS(ROW()-1,COLUMN()-2,4))+TIMEVALUE(INDIRECT(ADDRESS(ROW()-1,COLUMN()-1,4))))
    

    最后,确保将单元格格式化为“持续时间”。

    enter image description here