Arrayformula如果和

时间:2014-07-02 12:01:15

标签: google-sheets array-formulas

我试图将一个数组公式应用到我的一张纸上,但它不起作用 - 公式本身有效,但它不适用于所有单元格(续位)

这是我的公式。

if(H2-F2<14,1,if(and(H2-F2>14,H2-F2<168),14,if(H2-F2>168,42,"")))

当我添加数组公式

=ARRAYFORMULA(
  if(H2-F2<14,1,
    if(and(H2-F2>14,H2-F2<168),14,
      if(H2-F2>168,42,"")
    )
   )
)

它有效,但并不适用于所有细胞,为什么会这样,我该怎么做呢?

编辑:具有单元格范围的新公式

=ARRAYFORMULA(
  if(H2:H-F2:F<14,1,
    if(and(H2:H-F2:F>14,H2:H-F2:F<168),14,
      if(H2:H-F2:F>168,42,"")
    )
  )
)

1 个答案:

答案 0 :(得分:2)

我不确定为什么它也不起作用,但解决方法是打破&#39;和&#39;以及&#39;和&#39;中的每一个条件。陈述成单独的嵌套&#39;如果&#39;声明。因此,如果您有三个条件,最终会有三个if语句嵌套在另一个中:

if(condition_1,if(condition_2,if(condition_3,then X,else Y),否则Y),否则Y)

它等同于if +和声明