IF功能是一个非常强大的工具,使您能够根据条件操作和分析Excel数据。该陈述源于“IF”的逻辑使用,将一个单元的一个单元的值从一个或多个其他小区中存在的条件归类为基础。

我们在日常生活中使用“if”一词,以使Excel使用IF功能的方式做出决策,以基于您的数据做出决策。例如,在现实生活中,我们可能会决定“如果”我们得到提升,我们将休假。本声明依赖于我们评估条件,然后根据该评估采取行动,同样的评估方式,即Excel检查条件,然后根据其评估采取进一步的步骤。

Microsoft Excel - 从初学者到高级Excel

最后更新5月2021

畅销书
  • 215讲座
  • 各级
4.6 (221,875)

Excel与此A-Z Microsoft Excel课程。Microsoft Excel 2010,2013,2016,Excel 2019和Office 365 |由Kyle Pew,Office Newb

探索课程

Excel通过允许您在同一表达式中使用多个陈述来提供电子表格中数据的更多电量。本教程将向您展示如何在工作表中使用它们。要从本教程获取最大值,首先需要了解如何使用基本Excel函数和功能。

基本IF功能在Excel中

Excel中的基本功能评估一个条件,然后根据该评估的结果执行多个步骤。查看下面的图表以查看IF功能后面的逻辑的视觉表示。

由于上面的图像表明,我们使用if语句来评估一个条件。如果陈述返回true,则返回一个值。如果语句返回false,则返回另一个值。让我们来看看if语句的语法。

Microsoft Excel如果语法

以下是Excel中If语句的语法:

if(条件,value_if_true,value_if_false)

以下是参数的详细信息:

状况:您要测试的值。

value_if_true:如果条件评估为true,则返回的值。

value_if_false:如果条件评估为false,则返回的值。

要获得这项工作的感觉,我们可以将其转换为像下面的示例一样将其转换为伪码:

if(条件)然后value_if_true else value_if_false结束如果

Excel中的第三个参数如果语句等同于else语句将以许多编程语言返回的内容,但您也可以使用另一个if语句作为第三个参数。此结构意味着您可以创建if语句,然后如果该语句评估为true,则代码可以使用另一个if语句等。

以下是嵌套if语句看起来像:

if(条件1,value_if_true1,if(compition2,value_if_true2,value_if_false2))

我们可以再次查看这一点,以弄清楚正在发生的事情。

如果条件1那么value_if_true1 elsefition2那么value_if_true2 else value_if_false2结束

使用当前版本的Excel,如果函数最多可以嵌套64种不同 - 这基本上是在编程语言中链接一堆eleorif条件。但请注意,即只是因为它可以嵌套大量的if语句,并不意味着这是一个好主意。我们将解释在文章后面的后面的原因,但现在,让我们来看看有关陈述是否可以帮助您的数据分析的嵌套方式的一些示例。

如何在Excel中使用多个if语句

在我们使用多个IF语句之前,让我们开始使用一个IF语句的简单示例,并从那里开始。

在Excel中使用if语句

对于我们以下的例子,想象一下,您是一个需要根据其考试成绩为每个学生分配成绩的老师。您可以在电子表格中拥有学生的名称及其测试分数。以下是您将拥有的数据类型的样本:

名称 测试得分
鲍勃 42.
起诉 65.
85.
p 90.
约翰 67.
辛迪 75.
吉姆 55.
南希 77.
将要 68.

让我们与学生一起宽容,并说任何学生都获得了50%的问题权就权。下面,您可以看到Excel电子表格中的数据看起来像什么。我们还为我们将使用的if函数添加了通行/失败列。

在电子表格中有数据后,在Pass / Fail列中选择顶部单元格,然后单击FX按钮以向单元添加函数。这是将在列中打印“通过”或“失败”的函数:

if(b2> 50,“通过”,“失败”)

您可以在等于标志后面添加。这基本上说,如果B2单元格中的值大于50,则打印“通过”。如果没有,请打印“失败”。要将函数添加到列中的其余单元格中,只需突出显示并将单元格拖到列中,并且它将为每个单元格创建功能。如果单击它们,您将注意到唯一更改的唯一方法是函数中的单元格值。下一个单元格下的以下功能将是这样的:

if(b3> 50,“通过”,“失败”)

这是一个简单的例子,但它显示了如果函数可以在Excel中有价值。想象一下,必须通过查看测试得分列,在一百名学生的列表中确定通过或失败。让我们进一步抓住这一点,给学生的信代,而不是简单地传递或失败。这将使我们有机会使用嵌套IF语句。

在Excel中使用嵌套if语句

你已经决定通过并且失败是不够的。您需要将信件等级分配给学生。这是你将如何确定的。如果学生获得50岁以下的测试分数,那么他们就会得到“e”等级。如果学生分数在50到60之间,他们就会得到“D”。如果分数在60到70之间,他们会得到“C”。分数在70到80之间,他们得到了一个“b”,得分为80或以上,他们得到了一个“A.”

这是我们的新学生电子表格的样子:

我们将使用IF语句语法来创建分配所需等级所需的各种条件。

基本上,我们将创建一个“如果”声明,检查测试是否为50或更低。如果条件为真,我们将为该学生分配一个等级的“e”。如果条件为false,我们将使用新的if语句来创建一个检查等级在50到60之间的新条件。如果此条件为真,则会分配“D”等级,但如果条件为假,我们需要创建一个新的IF语句来检查新条件。通过这种方式,我们将创建多个IF语句,以检查分配学生正确等级所需的所有条件。

这是使用多个IF语句检查每个条件的Excel公式的内容如下所示:

if(b2 <50,“e”,if(b2 <60,“d”,if(b2 <70,“c”),if(b2 <80,“b”,if(b2 <100,“a”)))))

excel中的多个陈述可能很难创建,并且可以遵循令人难以置信的复杂性。在创建多个IF语句时,遵循一个好的规则是首先以简单的英语写入语句。这将帮助您创建一个逻辑结构,您可以使用它来创建Excel if语句。另一个选项是使用伪代码,如语法部分所做的那样。对于我们嵌套的如果是公式,它将是这样的:

如果b2 <50然后“e”elsef b2 <60那么“d”elsef b2 <70那么“c”elsif b2 <80那么“b”elsef b2 <100那么“a”结束

生成的工作表将如下所示:

避免具有多个IF语句的问题

Microsoft Excel将允许您嵌套最多64个如果语句,但您真的不想这样做。这包括:

•如果陈述若要采取一些工作要创建。很难记住你在嵌套很多IF语句时你正在做的事情。很难讲述我们的陈述是否正在做什么来计算字母等级,并且在那里只有四个嵌套的陈述。想象一下,如果有64个。

•如果陈述可能很难维护多个。您可能会知道他们在最初创建它们时如何工作,但如果您必须在几个月内才能编辑它们?如果其他人获得修改它们的工作怎么办?需要时间来确定你试图首先做的事情。

•即使您可以在2007年后创建的Excel版本中使用64嵌套功能,旧版本的Excel不允许那么多嵌套。Excel 2003只支持七个​​嵌套IF功能。

如果Excel电子表格中的IF语句太长,则可能是时候重新思考如何创建电子表格。重新组织数据并使用其他Excel功能,如开关可能是答案。

嵌套IF语句的替代方案

多个IF语句可以给您提供大量的权力,但他们可以失控。有很多Excel公式可以在正确的情况下替换多嵌套的IF语句。让我们看看一些选择。

交换机功能

交换机功能不适用于字母等级电子表格,因为我们正在使用范围作为我们的条件。但是,Switch语句可以用作嵌套if语句的简明形式,用于预定义值。例如,如果我们想要在电子表格中基于字母等级中的另一个列,则交换机语句将是完美的作业。让我们说,我们希望根据信的成绩分配每个学生到房间号码。如果我们写了一个嵌套的if语句来执行此操作,那将是这样的:

if(c2 =“a”,100,if(c2 =“b”,101,if(c2 =“c”,102,if(c2 =),103,if(c2 =“e”,104)))))

因为我们在IF功能中寻找特定值,所以我们可以用交换机替换它。交换机功能的语法如下:

交换机(表达式,value1,结果1,value2,结果2,...,[默认])

交换机函数评估表达式参数中的值。如果匹配value1,则返回结果1。如果匹配value2,则返回结果2,依此类推。因此要替换上面的嵌套if语句,我们将使用以下切换语句:

开关(C3,“A”,100,“B”,101,“C”,102,“D”,103,“E”,104)

此语句检查C3单元格,如果它包含“A”,则将值设置为100.如果它是“B”,我们将其设置为101,等等。交换机功能在Excel 2016中首次亮相。对于旧版本的Excel,您可以连接多个IF语句。

在Excel中连接多个IF功能

要执行类似于2016年之前发布的Excel版本中的Switch语句的内容,您可以使用ampersand或连接函数来连接多个if语句而不是嵌套它们。这仅适用于交换机语句的工作。我们评估的值必须预定义,而不是范围。以下表达式可以替换上面的交换机语句:

(如果(c2 =“a”,100,“”)&if(c2 =“b”,101,“”)&if(c2 =“c”,102,“”)&if(c2 =“d”,103,“”)&if(c2 =“c”,104,“”))

我们也可以用这个替换它:

连接(如果(c2 =“a”,100,“”),if(c2 =“b”,101,“”),if(c2 =“c”,102,“”),if(c2 =“d“,103,”“),if(c2 =”c“,104,”“))

这些陈述仍然非常漫长,但它们并未嵌套,使其更简单读取。

IFS功能

Microsoft Excel 2016及更高版本的另一个功能是IFS函数。您可以使用它来评估多个条件。以下是ifs函数的语法:

ifs(logical_test1,value_if_true1,[logical_test2,value_if_true2] ...)

此语法就像交换机功能的语法,但IFS函数允许范围。如果逻辑测试评估为true,则公式将返回匹配值。我们可以使用它来替换我们最初使用的表达式,以将字母等级添加到等级列。这是再次表达:

if(b2 <50,“e”,if(b2 <60,“d”,if(b2 <70,“c”),if(b2 <80,“b”,if(b2 <100,“a”)))))

我们可以创建像这样的公式来替换它:

IFS(B2 <50,“E”,B2 <60,“D”,B2 <70,“C”,B2 <80,“B”,B2 <100,“A”)

选择功能

您还可以使用“选择”函数在Excel电子表格中替换多个IF语句。选择功能的语法比到目前为止我们覆盖的功能更高级。以下是语法:

选择(index_num,value1,[value2],[value3],[value4],......)

index_num的值确定返回值。如果index_num为1,则它返回值1。如果index_num为2,则它返回value2等。以下是如何为我们的来信级公式进行:

选择((B2 <60)+(B2 <70)+(B2 <80)+(B2 <90)+(B2 <100),“A”,“B”,“C”,“D”,“E“)

此表达式工作原因是Excel中的True = 1和False = 0。因此,如果学生得到95,只有B2 <100表达式将评估为TRUE。所有其余的都是假的。这将使index_num等于1 + 0 + 0 + 0 + 0或1.这将评估值1参数或“A”中的值。如果学生有50个,那么Index_Num参数中的所有表达式都会加5,这会导致“E”。

结论

IF功能是您可以在Excel电子表格中使用的强大工具。您可以使用它进行数据分析,条件标记数据等。您可以嵌套if语句的事实为您提供了更多对电子表格中的条件的控制,以及能够将彼此相反的两个值进行比较。嵌套ifs可能会变得难以管理,但有Excel函数可以使用代替多个IF语句,包括交换机,IFS和选择。尽管如此,您仍然无法击败IF语句以获得灵活性。

既然你知道如何在Excel中使用多个if语句,让我们了解vlookup函数,另一个最重要的excel技能。

顶级课程在Excel

Excel Essentials为现实世界(完整的Excel课程)
Leila Gharani.
4.7 (5,819)
收视率最高
Microsoft Excel - 从初学者到高级Excel
Kyle Pew,Office Newb
4.6 (221,875)
畅销书
Excel初学者:财务建模和估值
365职业
4.6 (33,707)
畅销书
Microsoft Excel - 具有Excel Pivot表的数据分析
Maven Analytics,Chris Dutton
4.6 (26,476)
畅销书
Microsoft Excel - 数据可视化,Excel图表和图表
Maven Analytics,Chris Dutton
4.6 (21,200)
畅销书
Microsoft Excel Pro提示:从初学者到高级Excel
Maven Analytics,Chris Dutton
4.6 (2,448)
畅销书
完整介绍Excel枢轴表和枢轴图表
伊恩列John.
4.5 (528)

更多Excel课程

Excel学生还学习

赋予你的团队。引领行业。

通过Udemy为Business获取组织的在线课程和数字学习工具库的订阅。

请求演示