【问题标题】:Count consecutive days/occurrences based on multiple criteria根据多个标准计算连续天数/发生次数
【发布时间】:2019-08-01 16:30:45
【问题描述】:

在附件中,我对以下公式有疑问。

=IF(B2="","", ArrayFormula(max(frequency(if(E2:Z2=B2,row(E2:Z2)),if(E2:Z2<>B2,row(E2:Z2))))))

位于 D 列,它正在尝试根据以下条件计算连续天数:

  • 正在使用/等于今天(B 列)
  • 当它到达不同的条目时停止向后(过去)计数。
  • 不计入未来。

C 列是预期的答案。

结果只是计算整条线上的所有连续出现,这可能是在将来,或者他们可能在一天内使用了不同的资产,这会中断连续计数,但是,如果确实有更多数。

突出显示的绿色是我要计算的范围。

作为参考,请假设 Today() 是 01/08/2019 否则事情会不断变化。

https://docs.google.com/spreadsheets/d/1FCCnSqMmH5jLFLTQFnmLlIrkiIicjHFvTcP87zBBjPM/edit#gid=0

【问题讨论】:

标签: regex if-statement google-sheets frequency array-formulas


【解决方案1】:
=ARRAYFORMULA(LEN(REGEXEXTRACT(SUBSTITUTE(TRANSPOSE(QUERY(TRANSPOSE(IF(
 INDIRECT("E2:"&ADDRESS(COUNTA(B2:B)+1, MATCH(TODAY(), 1:1, 0), 4))=
 INDIRECT(ADDRESS(2, MATCH(TODAY(), 1:1, 0), 4)&":"&
          ADDRESS(COUNTA(B2:B)+1, MATCH(TODAY(), 1:1, 0), 4)), 1, "♦"))
 ,,999^99)), " ", ), "(\d+)$")))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-11
    • 1970-01-01
    相关资源
    最近更新 更多