EXCEL 搜索一行中最后一个非空值 并返回与其对应第一行的日期

来源:百度知道 编辑:UC知道 时间:2024/06/16 20:43:37
表1:
序 号 7月1日 7月2日 7月3日 7月4日 7月5日 7月6日
MS001 100 200 500
MS002 200 700
MS003 200 300

表2:
序 号 最后生产日期
MS001 7月5日
MS002 7月6日
MS003 7月4日

检索表1中每行数据的最后一个非空数值。
返回到表2中的“最后生产日期”下,显示对应每行最后一个非空值的日期。
就是在表2中的“最后生产日期”下,显示7月5日。
怎么能实现呢?

表2的B2
=INDEX(表1!$B$1:$G$1,MAX((OFFSET(表1!$A$1,MATCH(A2,表1!$A$1:$A$4,)-1,1,,6)>0)*COLUMN(A:F)))
数组公式,按Ctrl+Shift+Enter结束公式输入。
向下复制公式。

=TEXT(INDEX(表1!B1:L1,MAX((表1!B2:L2<>"")*(COLUMN(表1!B2:L2)))-1),"m月d日")

以上只假设了到L列,如果还有,可继续调整范围的.

其它的同样原理,你注意公式逻辑,便可灵活应用了。不建议生搬硬套。