看了小蚊子的博客关于Excel多条件匹配的文章,自己也尝试一下,发现实际操作还真的是会学到更多的东西。目前Excel多条件匹配的方法主要有三种:
SUMPRODUCT函数,SUMIFS函数(注意不是sumif),高级筛选功能
1.SUMPRODUCT()
在给定的几组数组中,将数组间对应的元素相乘,并返回乘积之和。
语法
SUMPRODUCT(array1,array2,array3, ...)
Array1, array2, array3, ... 为 2 到 255 个数组,其相应元素需要进行相乘并求和。
说明
- 数组参数必须具有相同的维数,否则,函数 SUMPRODUCT 将返回错误值 #VALUE!。
- 函数 SUMPRODUCT 将非数值型的数组元素作为 0 处理。
实例:
不过今天我们使用的功能比它本身更有意思。首先原始数据和筛选需求数据如下:
使用sumproduct()函数
2.SUMIFS()
对某一区域内满足多重条件的单元格求和。
要点 SUMIFS 和 SUMIF 的参数顺序不同。具体而言,sum_range 参数在 SUMIFS 中是第一个参数,而在 SUMIF 中则是第三个参数。如果要复制和编辑这些相似函数,确保按正确顺序放置参数。
语法
SUMIFS(sum_range,criteria_range1,criteria1,criteria_range2,criteria2…)
Sum_range 是要求和的一个或多个单元格,其中包括数字或包含数字的名称、数组或引用。空值和文本值会被忽略。
Criteria_range1, criteria_range2, … 是计算关联条件的 1 至 127 个区域。
Criteria1, criteria2, … 是数字、表达式、单元格引用或文本形式的 1 至 127 个条件,用于定义要对哪些单元格求和。例如,条件可以表示为 32、"32"、">32"、"apples" 或 B4。
注解
- 仅当 sum_range 中的每一单元格满足为其指定的所有关联条件时,才对这些单元格进行求和。
- sum_range 中包含 TRUE 的单元格计算为 1;sum_range 中包含 FALSE 的单元格计算为 0(零)。
- 与 SUMIF 函数中的区域和条件参数不同,SUMIFS 中每个 criteria_range 的大小和形状必须与 sum_range 相同。
- 您可以在条件中使用通配符,即问号 (?) 和星号 (*)。问号匹配任一单个字符;星号匹配任一字符序列。如果要查找实际的问号或星号,请在字符前键入波形符 (~)。
示例:基于支付利息对银行帐户中的金额求和
8711的计算结果这里就不给出公式了,大家自己解开,下面的一个也不给出算式了。
3.高级筛选
使用数据
筛选需求数据为
下面使用高级筛选功能进行多条件匹配,首先找到高级筛选
弹出的对话框有两个区域,列表区域和条件区域。在列表区域把原始的数据选中,在条件区域把需求数据区域选中。
选中需求数据区域
复制到某一个新的区域以便于查看匹配的结果