怎么在EXCEL顺序表格中实现,如果该行靠后的单元格有值,显示该列表格上面对应的表头内容?

例如图片表格中,序号1行,对应的第六年(G2单元格)有值,那么在统计栏(J2单元格)显示G1单元格(第六年)的内容;同样的,序号3行,对应的第五年(F4单元格)有值,那么在统计兰(J4单元格)显示F1单元格(第五年)的内容。

谢谢!

第1个回答  2020-07-29

如图:

J2=LOOKUP(9^9,B2:I2,B$1:I$1)

下拉。

为题主提供完整的截图——数据源及需要的结果一目了然——点赞!即使不看文字说明,也完全能理解提问的要求。

追问

按照你写的,实现了想要的功能。非常感谢,本人技拙,只会按照你的照搬,能否详细的说明一下,谢谢!

追答

lookup函数中第1个参数是要查找的数据,第2个参数是告诉它到哪里去找,找到后,就返回对应位置第3个参数中的数据。一般情况下,要求第2个参数是升序排列,这时在第2参数中找到第1个参数的标准是:小于或等于第1个参数的最大数,如在0,10,20中找19,小于或等于19的最大数就是10了,在第2个位置。但lookup函数功能极强大,灵活运用,能解决很多复杂的问题。
以本问题为例,第2参数中的数字是乱序的(B列到I列),那如何返回呢?lookup仍是查找小于或等于第1参数的最小数值,但因为第2参数是乱序的,它就会“懵”了,在第2参数中一直往后找,找到最后一个数字的位置,再返回对应位置的第3个参数中的数据。显然这正是本问题所需要的结果。