Paul
Open any code module. Click Tools | References. Select "Microsoft Excel xx
Object ..." (whichever version is loaded on your PC). Save/close the
References window.
Your Access now knows to look at the Excel object for functions. Here's a
sample function that lets you include up to 20 values and returns the
largest:
Public Function fnMaxOfSet(rPar1 As Variant, _
Optional rPar2 As Variant, _
Optional rPar3 As Variant, _
Optional rPar4 As Variant, _
Optional rPar5 As Variant, _
Optional rPar6 As Variant, _
Optional rPar7 As Variant, _
Optional rPar8 As Variant, _
Optional rPar9 As Variant, _
Optional rPar10 As Variant, _
Optional rPar11 As Variant, _
Optional rPar12 As Variant, _
Optional rPar13 As Variant, _
Optional rPar14 As Variant, _
Optional rPar15 As Variant, _
Optional rPar16 As Variant, _
Optional rPar17 As Variant, _
Optional rPar18 As Variant, _
Optional rPar19 As Variant, _
Optional rPar20 As Variant) As Variant
fnMaxOfSet = Excel.WorksheetFunction.Max(rPar1, _
rPar2, _
rPar3, _
rPar4, _
rPar5, _
rPar6, _
rPar7, _
rPar8, _
rPar9, _
rPar10, _
rPar11, _
rPar12, _
rPar13, _
rPar14, _
rPar15, _
rPar16, _
rPar17, _
rPar18, _
rPar19, _
rPar20)
End Function
It's pretty stripped down, mostly a proof-of-concept.
I will suggest/advise that if you have repeating columns (the main reason I
can imagine needing to pick the Max() or Min()), your Access data structure
is probably not well-normalized. This will cause you and Access
considerable headaches, as Access is optimized to work with normalized data
structures.
Good luck!
Jeff Boyce