Εμφάνιση ενός μόνο μηνύματος
  #5  
Παλιά 25-09-13, 06:18
Το avatar του χρήστη Tasos
Tasos Ο χρήστης Tasos δεν είναι συνδεδεμένος
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.035
Προεπιλογή

Καλημέρα!

Δημήτρη, δοκίμασε τον παρακάτω κώδικα SQL:

Κώδικας:
SELECT Maximum(-2.225E-307,[mynumbers],[mynumbers2],[mynumbers3],[mynumbers4],[mynumbers5],[mynumbers6]) 
AS 1stMaxRecordvalue, 
Maximum([1stMaxRecordvalue],[mynumbers],[mynumbers2],[mynumbers3],[mynumbers4],[mynumbers5],[mynumbers6],1) 
AS 2ndMaxRecordvalue, 
Maximum([2ndMaxRecordvalue],[mynumbers],[mynumbers2],[mynumbers3],[mynumbers4],[mynumbers5],[mynumbers6],1) 
AS 3rdMaxRecordvalue 
FROM tbl;
σε συνδυασμό με τον παρακάτω κώδικα VBA:

Κώδικας:
Option Compare Database
Option Explicit

Const Mini = -2.225E-307
Function Maximum(ParamArray ArrValues() As Variant)
    Dim i As Integer
    Dim MaxValue As Double
    Dim tmpValue As Double
    MaxValue = ArrValues(0)
    tmpValue = ArrValues(1)
    For i = 1 To UBound(ArrValues) - 1
        If MaxValue > Mini Then
            If ArrValues(i) > tmpValue And ArrValues(i) < MaxValue Then
                tmpValue = ArrValues(i)
            End If
        Else
            If ArrValues(i) > tmpValue Then
                tmpValue = ArrValues(i)
            End If
        End If
    Next i
    Maximum = tmpValue
End Function

Καλή συνέχεια!

Τάσος
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών