EXCEL 多条件筛选求值函数

求A列山东,B列结尾是005的C列数值之和
A列 B列 C列
山东 ****005 10元
河北 ****005 20元
河南 ****003 15元
山东 ****004 12元
......

你好;你可以用如下方法来实现。

1>先求D列,D1=IF(AND(A2="山东",RIGHT(B2,3)="005"),C2,0);意思是:如果满足条件,那么D列为C列,否则为0.

2>再对D列进行数据求和,就可以了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-02-23
excel多个条件筛选是数据分析的常见应用。其中可以使用高级筛选多条件字段设置、函数公式、VBA来实现多条件筛选。
  下面我们以一个案例来介绍excel多个条件筛选的几种方法。
第一,用高级筛选多条件完成多个条件筛选
  下图是有两张工作表,“表一”是数据源,“表二”如下图。案例要求:筛选“表一”中性别为“女”或者工资大于6000的记录,将筛选结果放在“表二”中。

  下面是具体的操作步骤:
  1.首先激活“表二”,此表为当前活动工作表。
  2.建立条件区域:在空白地方,比如E1:F3单元格输入条件。
  提示:因为筛选条件是“或”的关系,只要性别为“女”或者工资大于6000都可以,因此E2放置一个条件,F3放置另外一个条件。如果将F3的条件放在F2,两个条件就是并列关系,只有同时满足两个条件才可以。
  3.单击“数据”——“排序和筛选”——“高级”,打开“高级筛选”对话框,按照如下图设置,单击“确定”,即可完成。

第二,使用函数公式实现excel多个条件筛选
  “表二”工作表的A2单元格输入公式:=INDEX(表一!B:B,SMALL(IF(((表一!$C$2:$C$16="女")+(表一!$G$2:$G$16>6000)),ROW($2:$16),4^8),ROW(A1)))&"",按ctrl+shfit+enter三键结束,然后下来,直到出现空白为止。
  至于具体公式解释,可以参考文章:Excel用函数公式筛选数据的方法http://www.ittribalwo.com/show.asp?id=959
第三,使用VBA代码实现excel多个条件筛选
  按ALT+F11,打开VBE编辑器,插入——模块,然后复制粘贴下面的代码,按F5键运行。
Sub 多个条件筛选()
Range("A2:C65536").ClearContents
Sheets("表一").Range("A1:G16").AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Range("E1:F3"), CopyToRange:=Range("表二!A1:C1"), Unique:= _
False
End Sub
  思路提示:可以将方法一介绍的高级筛选录制宏操作一遍,然后再适当修改代码得到。
  其中:Sheets("表一").Range("A1:G16"):表示查找的范围。
     CriteriaRange:=Range("E1:F3"):表示查询条件,包括字段名称。
     CopyToRange:=Range("表二!A1:C1"):表示结果的保存范围,包括字段名称。
第2个回答  2013-03-23
直接设置了筛选就行了:首行设筛选,A列条件为山东,B列条件为结尾是005,然后C列显示的数据求和就行了。版本越新,设置越容易。鼠标选中首行(A列,B列,C列所在行,不是首行也没事),数据菜单下选择筛选,2010版的下拉箭头打开后可以直接输筛选条件,但是结尾是005,要在下拉菜单选。
第3个回答  2013-03-23
如果只是为了找到那些列,你就用筛选
如是是为了计算,你就要用到数组的公式了

公式可以是:
= sumproduct(--(A1:A100 = “山东”),--(right(B1:B100)="005"),C1:C100)
如果你的C列是有汉字"元"的话,公式就可以是:

= sumproduct(--(A1:A100 = “山东”),--(right(B1:B100)="005"),value(left(C1:C100,len(C1:C100)-1)))
第4个回答  2013-03-23
在D列D1中输入公式 =A1 & RIGHT(B1,3)
然后一直向下拉让所有行都有公式.
在E列E1中输入公式=sumif(D:D,"=山东005",C:C).
.即你要的结果.