使用 IF 语句检查值
Checking values with IF statement
很简单的问题。我有四列。如果第 1 列中的值为 False OR 0 OR N/A,那么我要检查第 2 列。如果第 2 列中的值为 False OR 0 OR N/A,那么我要检查第 3 列。如果第 3 列中的值为 False OR 0 OR N/A,那么我想打印第 4 列中的值。我的公式如下:
=IF(NOT(OR(ISNA(BJ2),BJ2=FALSE,BJ2=0)),BJ2,
IF(NOT(OR(ISNA(BK2),BK2=FALSE,BK2=0)),BK2,
IF(NOT(OR(ISNA(BL2),BL2=FALSE,BL2=0)),BL2,BM2)))
所以BJ是第1列,BK是第2列,BL是第3列,BM是第4列。
该公式适用于 False 和 0 错误,但当我添加 ISNA 部分时,它会崩溃。事实上,它什么也做不了。
列中的数据是字符串、FALSE(不是字符串)或 #N/A 作为值不可用错误。我用 ISNA 检查了我的 N/A 值之一,结果是 True。因此 OR 语句应该返回为 TRUE,然后通过否定并为假。因此 If 语句应该跳转到下一列。
是什么导致无法读取?
问题在于,如果 BJ2
恰好是 N/A
,则表达式如 BJ2=FALSE
或 BJ2=0
的计算结果将是 N/A
。所以,如果发生任何这种情况,OR
函数将用 N/A
回答,因为 OR()
计算它的所有参数! (不知道为什么)
很简单的问题。我有四列。如果第 1 列中的值为 False OR 0 OR N/A,那么我要检查第 2 列。如果第 2 列中的值为 False OR 0 OR N/A,那么我要检查第 3 列。如果第 3 列中的值为 False OR 0 OR N/A,那么我想打印第 4 列中的值。我的公式如下:
=IF(NOT(OR(ISNA(BJ2),BJ2=FALSE,BJ2=0)),BJ2,
IF(NOT(OR(ISNA(BK2),BK2=FALSE,BK2=0)),BK2,
IF(NOT(OR(ISNA(BL2),BL2=FALSE,BL2=0)),BL2,BM2)))
所以BJ是第1列,BK是第2列,BL是第3列,BM是第4列。 该公式适用于 False 和 0 错误,但当我添加 ISNA 部分时,它会崩溃。事实上,它什么也做不了。
列中的数据是字符串、FALSE(不是字符串)或 #N/A 作为值不可用错误。我用 ISNA 检查了我的 N/A 值之一,结果是 True。因此 OR 语句应该返回为 TRUE,然后通过否定并为假。因此 If 语句应该跳转到下一列。
是什么导致无法读取?
问题在于,如果 BJ2
恰好是 N/A
,则表达式如 BJ2=FALSE
或 BJ2=0
的计算结果将是 N/A
。所以,如果发生任何这种情况,OR
函数将用 N/A
回答,因为 OR()
计算它的所有参数! (不知道为什么)