所以我刚刚发现了有关ArrayFormula的信息,并试图将我的电子表格转换为使用它,以提高效率。它在我的所有专栏上都精彩地工作,除了一个,这给我带来了麻烦。
目前,我有这个公式(并复制到每个单元格):
=IF(C2="Immediate", D2+1, IF(C2="3 Day", WORKDAY(D2,3,Holidays!$B$2:$B$11), IF(C2="5 Day", WORKDAY(D2,5,Holidays!$B$2:$B$11), IF(ISBLANK(C2), IFERROR(1/0) ) ) ) )
根据我在另一栏中的下拉菜单计算日期非常有用。我无法弄清楚如何将其转换为使用ArrayFormula,因为我在添加第二个IF语句时出现错误。
我可以得到第一个使用这个公式的声明:
=ARRAYFORMULA(IF(C2:C="Immediate",D2:D+1,))
但是一旦我尝试添加第二个IF语句(例如下面的公式),我就会收到错误。
我该怎么做?我认为它可能很简单,但我无法弄明白!
我试图用一个更简单的公式来弄清楚我哪里出错了,同样的事情会发生在下面的公式,所以我显然做错了!
=ARRAYFORMULA(IF(A1:A=1,"Hello",),IF(A1:A=2,"Goodbye",))
只有第一个IF语句,它才有效。一旦我添加第二个,我得到#N / A
答案 0 :(得分:1)
在工作表的第1行某处尝试此公式:
=ARRAYFORMULA(IF(A:A="",,IF(A:A=1,"Hello",IF(A:A=2,"Goodbye","Other Result"))))
答案 1 :(得分:1)
我知道这是旧的,但也许可以试试这个公式:
={"Header_Cell_Name_Here";
ArrayFormula(
IFS(
$C$2:$C="","",
$C$2:$C="Immediate", $D$2:$D + 1,
$C$2:$C="3 Day", WORKDAY($D$2:$D,3,Holidays!$B$2:$B$11),
$C$2:$C="5 Day", WORKDAY($D$2:$D,5,Holidays!$B$2:$B$11)
)
)
}
IFS是IF的绝佳替代品。而不是像使用IF语句那样采用三个参数:
IF(logical_expression, value_if_true, value_if_false)
IFS语句可以处理任意数量的条件:
IFS(condition1, value1, [condition2, ...], [value2, ...])
答案 2 :(得分:0)
你可以使用那个公式
<span ng-click="vm.onClickBtn();$event.stopPropagation()">
<i class="fa fa-chevron-left fa-2x"></i>
</span>
答案 3 :(得分:0)
您的第一个公式,扩展为数组,对我来说效果很好
=ARRAYFORMULA(IF(C2:C5="Immediate",
D2:D5+1,
IF(C2:C5="3 Day",
WORKDAY(D2:D5,3,Sheet2!$B$2:$B$11),
IF(C2:C5="5 Day",
WORKDAY(D2:D5,5,Sheet2!$B$2:$B$11),
IF(ISBLANK(C2:C5),
IFERROR(1/0)
)
)
)
)
)