不用熬夜筛数据!Excel找最后日期+最新OR最低报价,3个技巧效率翻倍

office

案例一 最后一次日期

图片

要求:销售金额为正数数,且销售金额持续上升的最后一次日期

公式

INDEX(A4:A8,MATCH(1,(B5:B8B4:B8)\*(B4:B80),0))

数组 A4:A8

行序数

MATCH(1,(B5:B8B4:B8)\*(B4:B80),0)

MATCH函数公式解析

MATCH(1,(B5:B8B4:B8)\*(B4:B80),0)

查找值 1

查找区域 (B5:B8B4:B8)\*(B4:B80)

匹配类型 0

条件1 B4:B8 >0,当前行的B列值大于0

条件2 B5:B8<B4:B8,当前行的B列值大于下一行的B列值;

是一个逐元素比较的布尔运算表达式。它的作用是比较两个范围中对应位置的值,并返回一个布尔值数组(TRUE 或 FALSE)

条件1与条件2相乘,表示两者都满足

若某行同时满足 B列值 > 下一行值 且 B列值 > 0,则该位置为 1,否则为 0

案例二 最新含税单价

图片

要求:求每个编码各自的最新含税单价,若采购日期相同,则取最低值

公式

INDEX(SORT(FILTER(A$17:C$26,B$17:B$26=B18),{1,3},{-1,1}),1,3)

INDEX函数对排序的结果进行取值,因为已经通过SORT函数进行排序处理了,所以最新的采购日期位于第一行,最新的含税单价在第三列

数组

SORT(FILTER(A$17:C$26,B$17:B$26=B18),{1,3},{-1,1})

行序数 1

列序数 3

FILTER函数公式解析

对编码进行过滤

FILTER(A$17:C$26,B$17:B$26=B25)

数组 A$17:C$26

包括 B$17:B$26=B25

FILTER函数结果显示

图片

SORT函数公式解析

SORT(FILTER(A$17:C$26,B$17:B$26=B18),{1,3},{-1,1})

对FILTER函数过滤的结果进行排序

数组 FILTER(A$17:C$28,B$17:B$28=B18)

排序依据 {1,3},先按照第一列【采购日期】进行排序,再按照第三列【含税单价】进行排序

排序顺序 {-1,1},【采购日期】按照降序排序,【含税单价】按照升序排序

SORT函数结果显示

图片

案例三 最低报价单位

图片

要求:根据H列匹配出最低的报价单位

方法一

FILTER($C$1:$F$1,$C2:$F2=$H2)

数组 $C$1:$F$1

包括 C2:$F2=$H2

方法二

INDEX($C$1:$F$1,MATCH(H2,C2:F2,))

数组 $C$1:$F$1

MATCH函数公式解析

MATCH(H2,C2:F2,)

查找值 H2

查找区域 C2:F2

方法三

TEXTJOIN(",",,IF(H2=C2:F2,$C$1:$F$1,""))

分隔符 “,”

字符串 IF(H2=C2:F2,$C$1:$F$1,"")

IF函数公式解析

IF(H2=C2:F2,$C$1:$F$1,"")

测试条件 H2=C2:F2

真值 $C$1:$F$1

假值 ""

最终结果显示

图片