在excel中,有没有这样的函数,返回值是某一列中从上到下第一个非空单元格的值。

例如,已知C4、C5为空,C6=“2001年1月”,利用这个函数查找C4:C6这个范围内第一个非空单元格,返回值为C6的值。谢谢啦!
还是不行啊,例如,已知C4、C5为空,C6=“2001年1月”,C7=“2011年1月”,利用这个函数查找C4:C7这个范围内第一个非空单元格,返回值为C6的值,不是C7的值。谢谢啦!

在C4:C7区域之外的单元格输入
=INDEX(C:C,MIN(IF(C4:C7<>"",ROW(C4:C7))))
公式ctrl+shift+enter结束
(文本和数值都适合)

如果“2001年1月”是日期型数据,公式得到结果36892,这是正常的,将单元格格式设置为日期就可以追问

返回的值为1900年1月,没有取到C6的值

追答

有可能是你元单元格用的自定义格式
把鼠标点到C6,看编辑栏出现的是什么

追问

2001-1-1

追答

不可能
把文件发给我[email protected]

追问

取到C6了,我没有注意“公式ctrl+shift+enter结束”,谢谢!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-01
=LOOKUP("座",c4:c6)
第2个回答  2011-04-01
LOOKUP是搜索最后一个非空单元格。
可用
=INDEX(C4:C6,MATCH(9E+307,C4:C6,1))
如果C6是文本格式,9E+307改为"座"追问

改为:=INDEX(C4:C7,MATCH(9E+307,C4:C7,1))
无法取到C6的值,结果显示为#N/A