在excel vba中从数组中查找最高日期

时间:2014-05-12 13:08:51

标签: excel vba excel-2007

我试图找出数组中的最大值---> FinishDateArray()
但是,MaxDate值每次都是0。知道这可能有什么问题吗?该数组包含日期,我希望找到最高的日期。

下面的for循环显示数组确实包含所有值。但是运行内置的Max命令并没有给出最大日期。请帮忙。

以下是代码:

For i = 0 To UBound(FinishDateArray)  
    MsgBox i & " Date: " & FinishDateArray(i)  
Next i  
MaxDate = WorksheetFunction.Max(FinishDateArray)

MsgBox "Max Date: " & MaxDate

1 个答案:

答案 0 :(得分:3)

我也有同样的问题。所以我在网上搜索了答案,但我还没有找到答案。我想也许是MS的错误。 相反,我想出了一个解决方案。 在这里。

ReDim CLngArray(UBound(FinishDateArray))

For i = 0 To UBound(FinishDateArray)  
CLngArray(i) = CLng(FinishDateArray(i))  
Next i  
MaxDate = CDate(WorksheetFunction.Max(CLngArray))
MsgBox "Max Date: " & MaxDate