这是公式
=IF(
AND(
NOT(ISERROR(Table3[[#This Row],[lot_ID]])),
Table3[[#This Row],[uniquness]]="unique"
),
LEFT(Table3[[#This Row],[lot_ID]],3),
"junk"
)
下面是公式评估(省略了一些中间步骤。最后两个包含难题。)
谜团真的让我着迷。
这是公式
=IF(
AND(
NOT(ISERROR(Table3[[#This Row],[lot_ID]])),
Table3[[#This Row],[uniquness]]="unique"
),
LEFT(Table3[[#This Row],[lot_ID]],3),
"junk"
)
下面是公式评估(省略了一些中间步骤。最后两个包含难题。)
谜团真的让我着迷。
我有完全相同的问题。
原来我有一个循环引用把事情搞砸了。我解决了
它向我展示了作为循环引用的确切单元格。调整后,一切都开始按预期工作。
它肯定与循环引用有关。尽管单元格审核循环引用显示为灰色,但有同样的问题,这通常意味着没有循环引用。通过以下方式找到原因:1)将值键入到具有 0 问题的单元格中 2)按下撤消 3)得到有关循环引用错误的错误消息。仍然不知道如何追踪该循环引用的来源。
您可以对 if true 和 if false 进行长度检查:
=IF(B2="",IF(LEN(C2)>0,C2,""),IF(LEN(B2)>0,B2,""))
可能的答案:
“IF”公式仅在以下条件下返回“0”值:
1. "Value_if_true" = 0 AND Logical_test = TRUE
2. "Value_if_false" = 0 AND Logical_test = FALSE
3. "Value_if_true" = "0" AND Logical_test = TRUE
4. "Value_if_false" = "0" AND Logical_test = FALSE
5. "Value_if_true" = (NULL) AND Logical_test = TRUE
6. "Value_if_false" = (NULL) AND Logical_test = FALSE
根据您的屏幕截图,您在“Value_if_true”和“Value_if_false”中都有字符串。所以我们必须检查 Excel 如何评估这些字符串:
在 Excel (2010) 中,进入
"Options" > "Advanced" > "Lotus Compatibility Settings for: [YourSheetName]"
检查是否选中了“转换公式条目”选项。如果是,那么您可能发现了您的问题。你只需要取消选中它。如果未选中,则保持未选中状态。
启用“转换公式条目”选项时,Excel 会将字符串计算为 0。它会将您的公式评估为"=IF(TRUE,0,0)"
然后评估为 0,就像您说的那样。
我也有过 IF 语句在应该返回“是”或“否”时返回 0 的经验(使用 Office '13、16GB 电脑)。
我的问题是处理公式所需的程序和充满公式的文件,并在几分钟后最终返回“是”或“否”。但这确实引起了 10 分钟的混乱……足以让我在谷歌上找到它。