为什么 AND() condition/function 不适用于 ArrayFormula
Why does the AND() condition/function doesn't work with ArrayFomula
AND
函数:如果我删除 Arrayformula() 它工作正常但它不适用于数组公式。
能知道是什么原因吗?
=ARRAYFORMULA(IF(ISNUMBER(G3:G),IF(AND( G3:G>=7.5,G3:G<=8),"Full Day",IF(AND(G3:G>8,G3:G<24) ,"Full Day+",IF(AND(G3<7.5,G3>=4),"Half Day",IF(G3<4,"Short Leave",)))),))
如我所说
Since you use the ARRAYFORMULA function you should use * instead of the AND function
=ARRAYFORMULA(IF(ISNUMBER(A3:A),IF((A3:A>=7.5)*(A3:A<=8),"Full Day",IF((A3:A>8)*(A3:A<24) ,"Full Day+",IF((A3<7.5)*(A3>=4),"Half Day",IF(A3<4,"Short Leave",)))),))
当使用 ARRAYFORMULA
函数时,您应该使用 *
而不是 AND
函数和 +
而不是 OR
函数。
说明
我现在不记得有关于此的官方网站。无论如何。
点 1
在数组公式中,AND
给出一个值。 不是 TRUE/FALSE
的数组。
点 2
您还必须记住在“数学语言”中,TRUE=1
和FALSE=0
含义
+----------+--------+
| Formula | Result |
+----------+--------+
| =TRUE+2 | 3 |
| =FALSE+2 | 2 |
+----------+--------+
如您所见,可以在布尔 TRUE/FALSE
和 1/0
数字之间互换。
点 3
关于 AND 函数
The AND function returns true if all the provided arguments are logically true and false if any of the provided arguments are logically false.
综合起来
在数组公式中,我们在进行比较时不使用 AND/OR
,而是利用上述信息。
因此,“乘法” (A3:A>=7.5)*(A3:A<=8)
将 return 1(意思是 TRUE
)只有双方 return TRUE
。所有其他条件return 0(意思是FALSE
)。
这是 AND
函数的确切行为,并且确实在 ARRAYFORMULA
.
中起作用
关于OR函数
The OR
function returns true if any of the provided arguments are logically true and false if all of the provided arguments are logically false.
当使用 +
("addition") 而不是 OR
函数时,在数组公式中应用相同的逻辑。
AND
函数:如果我删除 Arrayformula() 它工作正常但它不适用于数组公式。
能知道是什么原因吗?
=ARRAYFORMULA(IF(ISNUMBER(G3:G),IF(AND( G3:G>=7.5,G3:G<=8),"Full Day",IF(AND(G3:G>8,G3:G<24) ,"Full Day+",IF(AND(G3<7.5,G3>=4),"Half Day",IF(G3<4,"Short Leave",)))),))
如我所说
Since you use the ARRAYFORMULA function you should use * instead of the AND function
=ARRAYFORMULA(IF(ISNUMBER(A3:A),IF((A3:A>=7.5)*(A3:A<=8),"Full Day",IF((A3:A>8)*(A3:A<24) ,"Full Day+",IF((A3<7.5)*(A3>=4),"Half Day",IF(A3<4,"Short Leave",)))),))
当使用 ARRAYFORMULA
函数时,您应该使用 *
而不是 AND
函数和 +
而不是 OR
函数。
说明
我现在不记得有关于此的官方网站。无论如何。
点 1
在数组公式中,AND
给出一个值。 不是 TRUE/FALSE
的数组。
点 2
您还必须记住在“数学语言”中,TRUE=1
和FALSE=0
含义
+----------+--------+
| Formula | Result |
+----------+--------+
| =TRUE+2 | 3 |
| =FALSE+2 | 2 |
+----------+--------+
如您所见,可以在布尔 TRUE/FALSE
和 1/0
数字之间互换。
点 3
关于 AND 函数
The AND function returns true if all the provided arguments are logically true and false if any of the provided arguments are logically false.
综合起来
在数组公式中,我们在进行比较时不使用 AND/OR
,而是利用上述信息。
因此,“乘法” (A3:A>=7.5)*(A3:A<=8)
将 return 1(意思是 TRUE
)只有双方 return TRUE
。所有其他条件return 0(意思是FALSE
)。
这是 AND
函数的确切行为,并且确实在 ARRAYFORMULA
.
关于OR函数
The
OR
function returns true if any of the provided arguments are logically true and false if all of the provided arguments are logically false.
当使用 +
("addition") 而不是 OR
函数时,在数组公式中应用相同的逻辑。