EXCEL中按条件返回第一个非空单元格的值

如图,要在A2中返回第一行为A且对应的第二行内第一个非空单元格的值,A2应该为3 A3为5 A4为1

A2=LOOKUP(1,0/(($B$1:$F$1="a")*($B2:$F2)),$B2:$F2)
同时按CTRL+SHIFT+回车键 公式再下拉追问

这个取得是最后一个值 我要去第一个 A3 A4的值都不对

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-03
EXCEL中按条件返回第一个非空单元格的值的方法如下:
1、公式法,可以在要返回值的单元格里输入下面的公式:
=INDEX(B2:F2,MIN(IF((B$1:F$1="A")*(B2:F2<>""),COLUMN(A:E))))
crtl+shift+enter结束公式 往下填充
2、编程法。
可以根据你的要求编写vba小程序,然后将返回值显示在指定的位置。
第2个回答  推荐于2017-10-13
=index(B2:F2,min(if((B$2:F$2="A")*(B2:F2<>""),column(A:E)))
crtl+shift+enter结束公式追问

公式不正确

追答

A2公式
=INDEX(B2:F2,MIN(IF((B$1:F$1="A")*(B2:F2""),COLUMN(A:E))))
crtl+shift+enter结束公式 往下填充

追问

值出不来 返回的是#VALUE!

追答

crtl+shift+enter结束公式三键一起按结束公式

本回答被提问者采纳