Salve a tutti, anzitutto mi presento: sono un "vecchietto" che si è avvicinato ad Access piano piano e ora che le cose si fanno più complesse, inizio ad avere grosse difficoltà.
Sto utilizzando una funzione che calcola la Mediana di un elenco di valori .... la cosa bella è che questa funzione mi da un risultato solo quando i valori in elenco sono dispari ... quando è pari, ricevo un errore #NUM!
Attendo le vostre valutazioni, grazie a tutti voi
Ecco la funzione che sto utilizzando:
Function MedianBI(Qry_analisi, BI) As Single
Dim MedianDB As Database
Dim ssMedian As Recordset
Dim RCount%, i%, x%, y%, OffSet%
Set MedianDB = CurrentDb()
Set ssMedian = MedianDB.OpenRecordset("SELECT [" & BI & "] FROM [" & Qry_analisi & "] WHERE [" & BI & "] IS NOT NULL ORDER BY [" & BI & "];")
ssMedian.MoveLast
RCount% = ssMedian.RecordCount
x% = RCount% Mod 2
If x% <> 0 Then
OffSet% = ((RCount% + 1) / 2) - 2
For i% = 0 To OffSet%
ssMedian.MovePrevious
Next i
MedianBI = ssMedian(BI)
Else
OffSet% = (RCount% / 2) - 2
For i% = 0 To OffSet%
ssMedian.MovePrevious
Next i
x% = ssMedian(BI)
ssMedian.MovePrevious
y% = ssMedian(BI)
MedianBI = (x% + y%) / 2
End If
ssMedian.Close
MedianDB.Close
End Function