Excel 2007轻松进行多条件求和
如果您也象我一样,要经常面对Excel表格中的数据做这样那样的分析,那么,您也一定会遇到这样的情形:一份数据众多的工作表,我们要对同时符合若干条件的数据进行求和。如图1所示的成绩表。我们想统计5班中语文名次、数学名次均位于前20名同学的总分之和。那该如何去做呢?
![]() |
| 图1(点击看大图) |
一、反复筛选法
Excel中通过筛选是可以把符合条件的数据单独显示出来的。先点击功能区“数据”选项卡中的“筛选”按钮,那么标题栏每一单元格均添加下拉按钮。点击“班级”(A1)单元格下拉按钮,在弹出的菜单下方取消选择“全选”复选项,然后再选中“5班”复选项。如图2所示。确定后显示出来的就只有5班学生的成绩了。
![]() |
| 图2 |
![]() |
| 图3 |
![]() |
| 图4 |
![]() |
| 图5 |
二、条件求和法
Excel 2007其实自带了一个多条件求和的工具。但是默认状态下没有安装。我们需要自行加载。
先点击左上角“Microsoft Office 按钮”,单击右下方“Excel选项”按钮。在打开的“Excel选项”对话框中点击左侧的“加载项”按钮,然后在右侧下方“管理”框中,选择“Excel 加载项”并点击“转到”按钮,如图6所示。
![]() |
| 图6(点击看大图) |
在打开的“加载宏”对话框中选中“条件求和向导”复选项,并点击“确定”按钮。Excel会自动加载此项功能,会需要用到原来的安装盘,根据提示操作就是了。
加载完成后,会在“公式”选项卡中多出一个“解决方案”功能组。而“条件求和”按钮就出现在这里。
点击之后,会打开“条件求和”向导。共四步。第一步,选中需要求和的数据区域,本例从A1:M80全部选中。第二步,设定求和列并设定相应的求和条件。先点击“求和列”右侧的下拉列表选择求和列的列标题,再点击下方的“条件列”、“运算符”、“比较值”下拉按钮设定求和的条件。本例有多个条件,那么每设置一个条件即点击“添加条件”按钮将该条件添加到条件列表中,如图7所示。第三步有两个选项,一是只显示公式;二是复制公式和条件。根据需要选择就是了。第四步则是要我们指定存放结果的单元格。最后单击完成按钮,就可以得到结果了。
![]() |
| 图7 |
上面的两种方法都需要较多的操作过程,相对而言当然不如直接在单元格内写公式简单,成就感也不那么强。所以,我们还是看看如何在单元格内直接书写公式解决问题吧。
三、SUM结合IF
直接用SUMIF函数不行,但我们把SUM函数和IF函数结合起来,再配合以数组公式,那就行了。
以本例来说,D2:D80存放语文名次,F2:F80存放数学名次,而A2:A80单元格区域则存放学生的班级,需要求和的区域是M2:M80。那么我们只要在空白单元格中输入公式“=SUM(IF((D2:D80<=20)*(F2:F80<=20)*(A2:A80="5班"),M2:M80))”,然后按下“Ctrl+Shift+Enter”快捷键,可以看到在公式两侧添加了数组公式的标志(一对大括号)。同时,结果也就出现了。如图8所示。其实该公式正是Excel中条件求和工具所用的公式。
![]() |
| 图8(点击看大图) |
四、SUMPRODUCT函数
如果感觉数组公式有些繁杂的话,那么下面的公式也是不错的。输入公式“=SUMPRODUCT((D2:D80<=20)*(A2:A80="5班")*(F2:F80<=20)*(M2:M80))”后直接回车就可以得到结果。很不错吧?如图9所示。
![]() |
| 图9 |
五、SUMIFS函数
在Excel 2007中,我们还可以使用SUMIFS函数。别小看了这多出来的一个“S”。没有它,我们只能对符合一个条件的数据求和,有了它,那就可以对符合多个条件的数据求和了。别忘了英语中“S”是表示复数的意思呢!
它的应用也很简单。在相应单元格内输入公式“=SUMIFS(M2:M80,A2:A80,"5班",D2:D80,"<=20",F2:F80,"<=20")”,按下回车键,就一切OK。如图10所示。
![]() |
| 图10(点击看大图) |









