今天教一个用 sumproduct 函数按区间查找的教程。
案例:在下图 1 中列出日期,就会自动查找出该日期在下方表格中对应的区间。
效果如下图 2 所示。
解决方案:1. 在 B1 单元格中输入需要查询的日期。
2. 在 B2 单元格中输入以下公式:
=SUMPRODUCT((B4:B15<=B1)*(C4:C15>=B1),A4:A15)
公式释义:
(B4:B15<=B1):将 B 列的日期依次与要查找的日期比较,判断是否小于等于该日期,会生成一组由 true 或 false 组成的数组;
(C4:C15>=B1):同理,判断 C 列是否大于等于 B1,也会生成一组 true 或 false 组成的数组;
将上述两组数组相乘,只有两个条件都满足的才为 1,否则为 0;
SUMPRODUCT(...,A4:A15):将上述乘积数组与 A 列的区间值依次相乘再求和,只有第一个参数中为 1 的值与 A 列的乘积才会保留下来,其余都为 0,这样就能查找出符合条件的区间了
表格已上传至 Power Query。
3. 选择菜单栏的“添加列”-->“索引列”-->“从 1”