使用分隔数据查找列中最早的日期

时间:2018-06-14 10:11:50

标签: excel vba

我正在创建一个函数,它将搜索范围并找到最早的日期(最旧的日期在数据的最后一行)。我的范围结构如下,我将无法改变这种结构:

Year Month Day
yyyy mm dd

所以年月和日分为三个不同的栏目。

我的代码如下:

Function OLDEST(yearrng As Range) As Variant
Dim lastrow As Long
Dim year, month, day As String

lastrow = Range(yearrng).SpecialCells(xlCellTypeBlanks).Row
year = Range("I" & lastrow).value
month = year.Offset(0, 1).value
day = year.Offset(0, 2).value

OLDEST = year & month & day

End Function

年龄与显示年份的范围相同。

问题是此功能正在工作并返回“值错误”......

我希望你理解我的问题。

谢谢!

1 个答案:

答案 0 :(得分:0)

对于非易失性工作表函数,您可以尝试:

=DATE(LOOKUP(2,1/(LEN($I:$I)>0),I:I),LOOKUP(2,1/(LEN($I:$I)>0),J:J),LOOKUP(2,1/(LEN($I:$I)>0),K:K))

其中I是要测试哪一列是“底部”行,而IJK是具有相关日期部分的列