Excel如何查找第一个非空单元格
如图:第一行为日期 展开
如图,做两个函数,函数名称及内容如下:
Function ks(p%) As String
Dim i%, x As String
x = ""
i = 2
Do While Cells(1, i) <> ""
If Cells(p, i) <> "" Then
x = Cells(1, i)
Exit Do
End If
i = i + 1
Loop
ks = x
End Function
Function js(p%) As String
Dim i%, x As String
x = ""
i = 2
Do While Cells(1, i) <> ""
If Cells(p, i) <> "" Then
x = Cells(1, i)
End If
i = i + 1
Loop
js = x
End Function
在单元格中调用时,参数P表示你要查找的行号,比如对于任务1,P=2,对于任务2,P=3
然后就可以得到结果了
注意:(1)两个函数必须写在独立模块中。
(2)由于日期型数据在EXCEL不好控制,所以最好表示成字符型。
=INDEX(B$1:Z$1,MATCH(HLOOKUP("*",B2:Z2,1,0),B2:Z2))
单元格C6输入公式
=LOOKUP(4^4,B2:Z2,B$1:Z$1)
然后公式往下拉,即可。
公式解释:
HLOOKUP,和LOOKUP是查找函数,
MATCH是得到索引,而INDEX是根据索引返回值。