每行最早的ArrayFormula

时间:2018-09-17 18:27:47

标签: google-sheets

我有一个包含名称和日期的电子表格。我需要确定每个名称列出的最早日期之后正好五年的日期。

Here is the data with names/info scrubbed, and the formulas as I have them currently.

我最终需要的唯一输出是续订日期(最小日期+ 5年)。有没有一种方法可以将数据输出到新行,而不必手动将格式复制到每个新行的E列中?

此外,如果每列中都有日期,则我只希望它仅输出续订日期。如果某行缺少一个(或多个)日期,则不应该存在续订日期。

我绝对没有接受过正式的Excel / Sheets培训或经验,因此我们将不胜感激。

2 个答案:

答案 0 :(得分:2)

正如您提到的,不需要ColumnE,并且续订日期可以通过以下方式计算:

height: 100vh;

尽管上面的=ArrayFormula(if(count(B2:D2)<>3,"",edate(MIN(B2:D2),60))) 并没有实现任何有用的功能-公式仍必须向下复制(从第2行)。

答案 1 :(得分:2)

我在共享的电子表格中复制了工作表,并输入了单元格E1

={"Renewal Date";ARRAYFORMULA(IF(COUNTIF(IF(B2:D<>"", ROW(B2:B)),ROW(B2:B))=3, EDATE(QUERY(TRANSPOSE(QUERY(TRANSPOSE( B2:D) , "Select "&"MIN(Col"&JOIN( ", MIN(Col",FILTER(ROW(A2:A)-1, A2:A<>"")&")"))), "Select Col2", 0),60),))}

看看这是否适合您?