access穫取列錶的最小值

2019-10-26 15:31:00
Allen Browne
翻譯
185

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])

    分享