Excel 应用TRUE函数判断逻辑值

TRUE函数是用来返回逻辑值TRUE。其语法如下:


TRUE()

打开“TRUE.xlsx”工作簿,本例的原始数据如图11-4所示。使用TRUE函数可以直接返回逻辑值。该函数的具体使用方法如下。

STEP01:在E2单元格中输入公式“=B4=C5”,然后按“Enter”键返回,即可得到计算结果“TRUE”,如图11-5所示。

图11-4 原始数据

输入公式“=B4=C5”

图11-5 输入公式“=B4=C5”

STEP02:在E3单元格中输入公式“=TRUE()”,然后按“Enter”键返回,即可得到计算结果“TRUE”,如图11-6所示。

输入公式“=TRUE()”

图11-6 输入公式“=TRUE()”

TRUE函数主要用于与其他电子表格程序进行兼容。可以直接在单元格或公式中输入TRUE,而可以不使用此函数,Excel 2019会自动将它解释成逻辑值TRUE。

Excel 应用AND函数进行交集运算

AND函数是用于对多个逻辑值进行交集的运算。当所有参数的逻辑值为真时,返回结果为TRUE;只要一个参数的逻辑值为假,返回结果即为FALSE。AND函数的语法如下:


AND(logical1,logical2, ...)

其中参数logical1、logical2……是1~255个要进行检测的条件,它们可以是TRUE也可以是FALSE。

在AND函数功能的讲解中,提到了一个概念——交集。一般地,由所有属于集合A且属于集合B的元素所组成的集合,叫作A与B的交集,记作A∩B(读作“A交B”),符号语言表达式为:A∩B={x|x∈A,且x∈B},如图11-1所示。

交集的图示表示

图11-1 交集的图示表示

打开“成绩册.xlsx”工作簿,切换至“Sheet1”工作表,该工作表记录了A班学生的3门成绩。在本例中要求判断出每个学生是否满足“三门功课均超过80分”的条件,具体操作步骤如下。

STEP01:在E2单元格中输入公式“=AND(B2>80,C2>80,D2>80)”,用来判断第1个同学“李红艳”是否满足条件,然后按“Enter”键返回。此时,工作表显示计算结果为“TRUE”,即李红艳3门功课均超过80分,如图11-2所示。

STEP02:选中E2单元格,利用填充柄工具向下复制公式至E16单元格,通过自动填充功能来判断其他同学是否满足条件,最终结果如图11-3所示。

判断李红艳是否满足条件

图11-2 判断李红艳是否满足条件

图11-3 最终判断结果

对于AND函数来说,在实际应用中,当两个或多个条件必须同时成立时才判定为真。其参数必须是逻辑值TRUE或FALSE,也可以是包含逻辑值的数组或引用。如果在数组或引用参数中包含了文本或空白单元格,则这些值将被忽略。如果指定的单元格区域内包含了非逻辑值,则AND函数将返回错误值“#VALUE!”。

Excel 删除与允许循环引用

单元格公式中如果使用了循环引用,在状态栏中的“循环引用”后面显示是循环引用中的某个单元格的引用。如果在状态栏没有“循环引用”一词,则说明活动工作表中不含循环引用。

删除循环引用的具体操作步骤如下。

STEP01:打开“循环引用.xlsx”工作簿,切换至“公式”选项卡,在“公式审核”组中单击“错误检查”下三角按钮,在展开的下拉列表中选中“循环引用”选项,在展开的级联列表中选中一个循环引用单元格,这里选中A1单元格,如图10-47所示。

STEP02:随后会返回工作表,光标已经将刚才选中的单元格定位。这时,在公式编辑栏中的公式中将其循环引用的单元格删除即可,如图10-48所示。

选中循环引用的单元格

图10-47 选中循环引用的单元格

删除循环引用的单元格

图10-48 删除循环引用的单元格

允许使用循环引用的具体操作步骤如下。

在工作表中切换至“文件”选项卡,在左侧导航栏中单击“选项”标签,打开如图10-49所示的“Excel选项”对话框。单击“公式”标签,在对应的右侧窗格中向下滑动滑块至“计算选项”列表框下,勾选“启用迭代计算”复选框,并在复选框下方设置“最多迭代次数”为100,设置“最大误差”的值为0.001,然后单击“确定”按钮完成设置,如图10-49所示。

勾选“启用迭代计算”复选框

图10-49 勾选“启用迭代计算”复选框

Excel 引用其他单元格

在进行公式运算时,很多情况下都需要使用其他工作表中的数据来参与计算。在引用其他工作表单元格中的数据时,通常的格式引用是:‘工作表名’!数据源地址。

STEP01:打开“总销售量统计.xlsx”工作簿,切换至“上半年总销售量”工作表,选中要引用其他工作表的单元格,这里选择B2单元格。在该单元格中输入函数“=SUM(”,如图10-43所示。

STEP02:单击“1-3月份销售量”工作表标签,选中要参与计算的单元格或单元格区域,这里选择“B2:D2”单元格区域,如图10-44所示。

STEP03:完善公式,在公式文本框中输入“)”,然后按“Enter”键返回即可得出计算结果,此时的工作表如图10-45所示。

STEP04:选中B2单元格,利用填充柄工具向下拖动鼠标,复制公式至B6单元格,结果如图10-46所示。

图10-43 输入部分公式

选择被引用的单元格

图10-44 选择被引用的单元格

完善公式

图10-45 完善公式

图10-46 复制公式

Excel 相对与绝对引用图解

单元格的引用有两种,一种是相对引用方式,一种是绝对引用方式。

相对引用

相对引用单元格的方法非常简单,接下来通过一个实例说明相对引用方式的方法。

STEP01:打开“单元格引用数据.xlsx”工作簿,切换至“相对引用.xlsx”工作表,在D2单元格中输入公式“=B2+C2”,按“Enter”键返回即可得到如图10-37所示的计算结果。

计算总分

图10-37 计算总分

图10-38 复制公式

STEP02:选中D2单元格,利用填充柄工具向下拖动鼠标,复制公式至D6单元格,结果如图10-38所示。

STEP03:选择复制得到公式的单元格,例如D5单元格,此时发现D5单元格中的公式为“=B5+C5”,数据源自动改变了,如图10-39所示。

绝对引用

单元格的绝对引用指的是把公式复制或移动到其他位置时,公式中的固定单元格地址保持不变。如果要对单元格采用绝对引用的方式,则需要使用“$”符号为标识。接下来还是通过一个案例说明如何对单元格进行绝对引用。

STEP01:切换至“绝对引用”工作表,选中D2单元格,在D2单元格中输入公式“=$B$2*C2”,按“Enter”键返回,即可得到如图10-40所示的计算结果。

STEP02:选中D2单元格,利用填充柄工具向下拖动鼠标,复制公式至D5单元格,结果如图10-41所示。

STEP03:选择复制得到公式的单元格,例如D5单元格,此时发现D5单元格中的公式为“=$B$2*C5”,说明绝对引用时地址不变,如图10-42所示。

图10-39 数据源自动改变

绝对引用计算结果

图10-40 绝对引用计算结果

图10-41 复制公式

绝对引用时地址不变

图10-42 绝对引用时地址不变

Excel 单元格引用样式

A1引用样式

默认情况下,Excel使用A1引用样式该样式使用数字1~65536表示行号,用字母A~IV表示列标。例如,第C列和第5行交叉处的单元格的引用形式为“C5”,如果引用整行或者整列,可以省去列标或者行号,比如1:1表示第1行。

R1C1引用样式

在工作表中切换至“文件”选项卡,在左侧导航栏中单击“选项”标签打开“Excel选项”对话框,单击“公式”标签,在对应的右侧窗格中向下滑动滑块至“使用公式”列表框下,勾选“R1C1引用样式”复选框,单击“确定”按钮即可完成设置,如图10-35所示。用R1C1引用样式,可以使用“R”与数字的组合来表示行号,“C”与数字的组合则表示列标。R1C1样式可以更加直观地体现单元格的“坐标”概念。

三维引用计算结果

图10-36 三维引用计算结果

三维引用

引用单元格区域时,冒号表示以冒号两边所引用的单元格为左上角和右下角之间的所有单元格组成的矩形区域。

当右下角单元格与左上角单元格处在同一行或者同一列时,这种引用称为一维引用,如A1:D1,或者A1:A5。而类似A1:C5,则表示以A1单元格为左上角,C5单元格为右下角的5行3列的矩形区域,这就形成了一个二维的面,所以该引用称为二维引用。

当引用区域不只在构成二维平面的方向出现时,其引用就是多维的,是一个由不同层次上多个面组成的空间模型。

打开“三维引用数据.xlsx”工作簿,在“Sheet1”工作表的E8单元格中输入公式“=SUM(Sheet1:Sheet3!A1:C5)”,表示对从工作表Sheet1到Sheet3的A1:C5单元格区域求和,按“Enter”键即可返回计算结果,如图10-36所示。在此公式的引用范围中,每个工作表的A1:C5都是一个二维平面,多个二维平面在行、列和表3个方向上构成了三维引用。

Excel 利用数组模拟IF()

前面讲了利用数组模拟AND和OR,同样利用数组也可以模拟IF()。还是以图10-30所示的工作表数据为例。

前一节讲过,在A8单元格中输入公式“=SUM(AND(C3:C7>2000,C3:C7<2500)*1)”,按“Ctrl+Shift+Enter”组合键返回后,得到的结果是0。在B8单元格中输入公式“=SUM((C3:C7>2000)*(C3:C7<2500)*1)”,按“Ctrl+Shift+Enter”组合键返回后,得到的结果是2。

现在把单元格A8中的公式更改为“=SUM(IF(C3:C7>2000,C3:C7<2500)*1)”,按“Ctrl+Shift+Enter”组合键返回后,得到的结果是2,如图10-33所示。

如果把IF去掉,公式又会变成什么样子呢?

在B8单元格中输入公式“=SUM((C3:C7>2000)*(C3:C7<2500))”,按“Ctrl+Shift+Enter”组合键返回后,得到的结果还是2,如图10-34所示。

图10-33 返回结果

图10-34 返回相同结果

由此可以看出,通常情况下“*”可以模拟IF()。需要注意的是,并不是所有的IF()都可以用“*”代替,用户可根据实际情况灵活运用。

Excel 利用数组模拟AND和OR

1)AND(与关系):当两个或多个条件必须同时成立时才判定为真是,则称判定与条件的关系为逻辑与关系,就是平常所说的“且”。

2)OR(或关系):当两个或多个条件只要有一个成立时就判定为真时,则称判定与条件的关系为逻辑或关系。

在Excel中,*和+可以与逻辑判断函数AND和OR互换,但在数组公式中,*和+号能够替换AND和OR函数,反之则行不通。这是因为AND函数和OR函数返回的是一个单值TRUE或FALSE,如果数据公式要执行多重计算,单值不能形成数组公式各参数间的一一对应关系。

打开“工资表.xlsx”工作簿,例如要统计如图10-30所示的表格中基本工资为2000~2500的员工人数,就是说统计工资高于2000且工资低于2500的人数,由此可以判定该条件是一个“逻辑与”关系。

STEP01:如果在单元格A8中输入公式“=SUM(AND(C3:C7>2000,C3:C7<2500)*1)”,按“Ctrl+Shift+Enter”组合键后,返回的结果是0,如图10-31所示。

图10-30 目标数据

图10-31 返回结果

因为公式中“C3:C7>2000”返回的值是{TRUE;FALSE;TRUE;TRUE;TRUE}。而公式“C3:C7<2500)”返回的值是{TRUE;TRUE;FALSE;TRUE;FALSE}。

这两个公式返回的值再逻辑与,则返回的值是FALSE。所以计算结果“=SUM(FALSE*1)=SUM(0*1)=0”。因此返回的结果为0。

STEP02:在单元格B8中输入公式“=SUM((C3:C7>2000)*(C3:C7<2500))”,按“Ctrl+Shift+Enter”组合键后,返回的结果是2,如图10-32所示。

图10-32 返回结果

这是因为在公式中“(C3:C7>2000)*(C3:C7<2500)”

={TRUE;FALSE;TRUE;TRUE;TRUE}*{TRUE;TRUE;FALSE;TRUE;FALSE}

={1;0;1;1;1}*{1;1;0;1;0}

={1;0;0;1;0}

所以公式的计算结果为“=SUM({1;0;0;1;0})”=2。

Excel 使用相关公式完整性

什么是相关公式完整性?还是以上一节的案例为例。在选中的单元格区域A1:D4中选择任意单元格,例如这里选择B3单元格,然后对单元格B3中的公式进行任意修改(即使和原公式一致),按“Enter”键返回工作表,会弹出如下图所示的警告对话框。

这是什么原因呢?

因为用户正在企图破坏公式的完整性,A1:D4单元格区域中的数据源都是“={“编号”,”姓名”,”性别”,”年龄”;”001″,”张三”,”男”,”22″;”002″,”张五”,”男”,”24″;”004″,”丁一”,”女”,”23″}”,它们运用的是同一个公式。如果用户想单独更改某一个单元格的公式时,系统会认为用户正在更改部分单元格的数据源,这样一来会导致发生数据源不一致的情况,从而导致与其他相关单元格脱离关系,这样数据公式就失去了意义。所以系统不允许更改数组公式中的部分内容。这样就可以保持数据的完整性,与数据源完全相对应。

Excel 返回数组集合

在使用数组公式时,有可能返回的是一个结果,也有可能返回的是一个集合。

STEP01:打开“人员统计.xlsx”工作簿,选中A1:D4单元格区域,输入公式“={“编号”,”姓名”,”性别”,”年龄”;”001″,”张三”,”男”,”22″;”002″,”张五”,”男”,”24″;”004″,”丁一”,”女”,”23″}”,如果按“Ctrl+Enter”组合键返回,会显示如图10-27所示的结果。

STEP02:如果按“Ctrl+Shift+Enter”组合键则会返回一组集合,结果如图10-28所示。

图10-27 返回结果

返回一组集合

图10-28 返回一组集合