excel中如何使用函数在选定区域内查找符合条件的值,并能返回该求合所有单元格所在行另一列单元格合计
苹果 300
香蕉 65
葡萄 45
梨 487
苹果 154
香蕉 14
梨 357
苹果 1585
香蕉 15
苹果 148
香蕉 65
葡萄 14
不要对“品种”那列排序,比如:我在某一单元格输入“葡萄”就可以求出所有葡萄的金额的合计数。
如果是先排序,再分类汇总可以很快求和,但是这张表不能排序。
谢谢大家了! 展开
1.举个例子,左侧大框内的数据表是寝室、班级、姓名及职务
将通过在f2中输入公式,并向右侧复制,向下复制,返回满足班级为9班并且是班级干部的记录。
2.返回一个逻辑值组成的数组,如果数组元素是true说明该位置的数据是9班,如果数组元素是false说明该位置的数据不是9班。
3.not嵌套isblank函数返回职位由逻辑值组成的数组,如果元素为真,说明该位置输入了职位内容,如果元素为假,说明该位置是空单元格。
4.两个由逻辑值组成的数组相乘,在相乘时,真转化为1,假转化为0,两个数组中对应的元素乘以对应元素,得到新的有0和1组成的数组,此时元素为0代表不同时满足条件班及为9班、是班干部,元素为1表示同时满足班级是9班、也是班干部。
5.第一个数组中的元素是1,if函数返回值数组中对应的元素将是公式所在行的行号,如果第一个数组中的元素是0吗,if函数将返回99999作为返回数组对应位置的元素值,if函数将返回一个由符合两个条件所对应的行号及99999组成的数组。
6.small函数将数组中(由符合条件的行号和99999组成的数组)最小值,当公式向下复制一行,将返回第二小的值,复制到再下一行将返回第三小的值以此类推。
7.index函数在寝室号区域中返回第一个符合条件的寝室列单元格,当函数向左复制时返回第一个符合条件的班级单元格,以此类推。
当函数向下复制时,返回第二个符合条件的行寝室号列对应的单元格。
在D1输入
=SUMIF(A:A,C1,B:B)
A列品种、B列金额、C列查询名称(C2)、D列金额合计(D2)
二、
在D2中输入公式:
=sum(if($A$2:$A$30=$C2,$B$2:$B$30,0))
——上面是数组公式,用Ctrl+Shift+Enter完成公式。
——将C2、D2公式向下复制,可建立多个查询。