如果主单元格没有值,则编写 IF() 公式以使用备用单元格

如果主单元格没有值,则编写 IF() 公式以使用备用单元格

我正在尝试编写一个公式来减去两个单元格,但前提是它们有值。如果其中一个单元格没有值,我想在减法中使用不同的单元格。

例如:

   |   A  |   B  |
---+------+------+
 1 | 1200 |  N/A |
 2 |  400 |  400 |
 3 |  100 |  600 |

我想在工作表中减去 等。但是,列中A1有一个 N/A,所以我想从 中减去。A3BB2B3

我该如何编写那个 If/Then 语句?

答案1

我只是为了完整性而添加这一点。关于“N/A”是故意的文本值还是 #N/A 错误条件的问题有点模糊,所以我将同时解决这两个问题。

正如问题中所述,您可以以不同的方式使用 IF 测试来检查单元格内容。如果目标值是文本字符串“N/A”,则可以使用等式 ( A1="N/A") 进行测试。如果目标值实际上是 #N/A 错误,或者您只是想验证单元格是否包含数字,那么甚至还有专用的测试函数,例如 ISNA 和 ISNUMBER。这些函数将为您提供 IF 条件的 True/False 结果,而无需使用等式将单元格值与另一个值进行测试。该方法通常如下所示:

IF(ISNA(A1),A3-A2,A3-A1)

或者

IF(ISNUMBER(A1),A3-A1,A3-A2)

Scott Craner 的答案通常是一种更好的方法。IFERROR 是一种特殊的专用 IF 测试,具有两个优点。一是它可以处理任何类型的错误情况,而不仅仅是 #N/A。例如,如果任一单元格包含任何错误情况或您尝试在算术中使用的文本(包括“N/A”),IFERROR 将处理结果。

第二个好处是它是 IF 测试的“简写形式”。它不需要正常的三个参数(测试条件、真结果、假结果)。它只需要“正常”公式,以及在正常公式产生错误时使用的替代公式或结果。这通常可以节省测试公式的时间,然后不必重复该公式才能使用它。公式本身充当测试条件。

但是,我能想到一种情况,在这种情况下 IFERROR 可能并不理想。假设您的数据包含文本字符串“N/A”作为缺失数据的故意占位符。您还希望仅使用该占位符来确定要使用哪个公式。此外,如果有任何其他非数字单元格内容或任何错误情况,您一定要知道。在这种情况下,您需要使用专门检查“N/A”的 IF 测试。它看起来会像这样:

IF(A1="N/A",A3-A2,A3-A1)

答案2

我会使用 IFERROR:

=IFERROR(A3-A1,A3-A2)

并复制。如果 A1 中的值是错误或文本,则会出现错误,并且下一个函数将解决。

在此处输入图片描述

相关内容