access不能像Excel一样,用Min()和Max()函数直接选择任意列表中的最小/最大值。
access一般都是在一列数据中找出最值。不能跨字段获取
下面函数,可以直接找出多个值(包括货币和日期)的最小值,如果列表中没有数值,则它们返回Null
Function MinOfList(ParamArray varValues()) As Variant Dim i As Integer 'Loop controller. Dim varMin As Variant 'Smallest value found so far. varMin = Null 'Initialize to null For i = LBound(varValues) To UBound(varValues) If IsNumeric(varValues(i)) Or IsDate(varValues(i)) Then If varMin <= varValues(i) Then 'do nothing Else varMin = varValues(i) End If End If Next MinOfList = varMin End Function
也可以在一个有三个日期字段的查询中,添加新列获取最小值
MinOfList([OrderDate], [InvoiceDate], [DueDate])