我有一个带有日期栏的源表。在sheet2上,我尝试创建一个列,其中每个单元格包含一个数字。该数字来自使用IFS
评估后转换源工作表上的日期。这是我的代码,当不与数组公式结合使用时,可以在每个单元格上工作:
=ifs(AND(Source!A2>DATEVALUE("05/06/2019"),Source!A2<=DATEVALUE("06/15/2019")),949,AND(Source!A2<=DATEVALUE("05/06/2019"),Source!A2>=DATEVALUE("04/01/2019")),900,Source!A2>DATEVALUE("06/15/2019"),999,true,)
但是,当我尝试合并arrayformula
时遇到错误,指出IFS
的Array参数的大小不同:
={"header name here";ArrayFormula(ifs(AND(Source!A2:A>DATEVALUE("05/06/2019"),Source!A2:A<=DATEVALUE("06/15/2019")),949,AND(Source!A2:A<=DATEVALUE("05/06/2019"),Source!A2:A>=DATEVALUE("04/01/2019")),900,Source!A2:A>DATEVALUE("06/15/2019"),999,true,))}
我做错了什么?
答案 0 :(得分:0)
ARRAYFORMULA
不了解AND
,因此您需要将其转换为0/1逻辑:
=ARRAYFORMULA(
IF((Source!A2:A> DATEVALUE("05/06/2019")) * (Source!A2:A<=DATEVALUE("06/15/2019")), 949,
IF((Source!A2:A<=DATEVALUE("05/06/2019")) * (Source!A2:A>=DATEVALUE("04/01/2019")), 900,
IF((Source!A2:A> DATEVALUE("06/15/2019")), 999, ))))