ich habe eine Datenbank mit drei unterschiedlichen Datumsfeldern je Datensatz, die jeweils eine Art Verfallsdatum darstellen. Abhängig von dem Datumsfeld ist eine Aktion 3, 6 bzw. 9 Wochen vor Ablaufdatum erforderlich. Es liegen 3 einfache Abfragen vor, die (mit gleichlautenden Feldnamen) jeweils eines der Datumsfelder nach Dringlichkeit sortieren.
Da ich von Natur her eher faul bin, habe ich keine Lust, mir drei Abfragen anzusehen, und würde diese drei gerne in einer Abfrage kombinieren. Geht das ?
Folgende Funktion liefert aus drei übergebenen Datumsfeldern das kleinste zurück. In der Abfrage musst Du dann diese als Spalte eintragen und aufsteigend danach sortieren.
pp
Public Function MinDatum(D1 As Variant, D2 As Variant, D3 As Variant)
Dim dat As Variant
dat = 0
If Nz(D1) 0 Then
dat = D1
End If
If Nz(D2) 0 Then
If dat = 0 Then
dat = D2
Else
If dat \> D2 Then dat = D2
End If
End If
If Nz(D3) 0 Then
If dat = 0 Then
dat = D3
Else
If dat \> D3 Then dat = D3
End If
End If
If Nz(dat) = 0 Then
MinDatum = Null
Else
MinDatum = dat
End If
End Function