IF函数是我在公式中经常使用的一个Excel函数。 IF函数用于测试逻辑条件,并根据逻辑条件是返回TRUE还是FALSE来产生两个不同的结果。
让我们以下面的手机销售表为例。您可以下载示例文件在这里 。
<图class =“ lazy aligncenter”>
具有单一条件的IF函数
请考虑一种情况,您需要根据每个销售行计算佣金关于销售地点的信息(D列)。如果销售是在美国进行的,则佣金为10%,否则其余地区的佣金为5%。
您需要在单元格F2上输入的第一个公式如下所示:
=IF(D2="USA", E2*10%, E2*5%)
公式分解:
然后,您可以将公式从CellF2复制到ColumnF中的其余行,它将进行计算每行的CommissionFee,取决于IF逻辑测试是否返回TRUE或FALSE的10%或5%
<!-In_content_1全部:[300x250] / dfp:[640x360]->
<图class =“ lazy aligncenter”>
IF函数具有多个条件
如果规则要复杂一些,而您需要测试多个逻辑条件并为每个条件返回不同的结果,该怎么办?
Excel对此有一个答案!我们可以在同一个单元格中合并多个IF功能,有时也称为嵌套IF。
请考虑以下类似情况,其中每个销售地点的佣金如下:
在单元格中F2(稍后将其复制到F列的其余行中),请按如下所示输入公式:
=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,E2*2%))
Formulabreakdown:
当进行逻辑测试时,由于Excel将从左至右评估公式
(例如D2 =“美国”),该函数将停止并返回结果,而后忽略任何进一步的逻辑测试(例如D2 =“澳大利亚”。)因此,如果第一个逻辑测试返回FALSE(即位置不是美国),它将继续评估第二个逻辑测试。也是FALSE(即位置不在澳大利亚),我们不需要进一步测试,因为我们知道Cell D2上唯一可能的值是新加坡,因此应返回E2 * 2%的结果。
为了清楚起见,您可以添加第三个逻辑测试IF(D2 =“新加坡”,“如果为真则为值”,“如果为假则为值”)。因此,完整的扩展公式如下所示:
=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,IF(D2="Singapore",E2*2%)))
<图类=“ lazy aligncenter”>
如前所述,上面的结果将返回与原始公式相同的结果。
=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,E2*2%))