PDA

Vollständige Version anzeigen : nächstkleinerer Wert


holli01
19.01.2003, 20:59
Access 2000 oder 2002

Ich habe eine Abfrage erstellt mit der Spalte1 (Art:Gruppierung "Fahrz") Spalte 2 ("Kilometerstand") und möchte nun den nächstkleineren Wert ("Kilometerstand") aus dem vorherigen Datensatz in Spalte 3 einfügen lassen, um die differenz errechnen zu können.

Ich habe schon 2,5 Stunden in der Hilfe gesucht aber nichts gefunden.
Im Web habe ich ebenfalls keine Lösung finden können.
(Nicht zuletzt da ich nicht genau wusste wie ich dieses Probem in einen Suchbegriff verwandeln sollte.)

Danke im voraus

Holli01

schuldlos
19.01.2003, 21:45
Hallo !!!

Sortieren..... absteigend

in eine neue Tabelle
die Zahl (Nummer) indexieren

dann

funktion

Public Function kleinereNrSuchen()
Dim db As Database, rs As Recordset
Set db = DBEngine.Workspaces(0).Databases(0)
Set rs = db.openrecordset("sorttab")
rs.Index = "Nummer"
rs.Seek "=", 4

rs.MoveNext

a = rs!Nummer

rs.Close
db.Close

End Function



dann sollte in a der nächstniedrigere Wert stehen

viel Erfolg !!!
völlig Schuldlos :grinange:

Nouba
19.01.2003, 21:49
Hallo Hollie01,

versuche mal die folgende Abfrage anzuwenden

<code>SELECT
&nbsp;&nbsp;F.Datum
, F.Fahrzeug
, F.Kilometerstand
, [Kilometerstand]-CLng(Nz((SELECT TOP 1
&nbsp;&nbsp;&nbsp;&nbsp;Kilometerstand
&nbsp;&nbsp;FROM tblFahrzeug
&nbsp;&nbsp;WHERE
&nbsp;&nbsp;&nbsp;&nbsp;Datum < F.Datum AND
&nbsp;&nbsp;&nbsp;&nbsp;Fahrzeug = F.Fahrzeug
&nbsp;&nbsp;ORDER BY Datum DESC),0)) AS KmGefahren
FROM tblFahrzeug AS F
ORDER BY
&nbsp;&nbsp;F.Fahrzeug
, F.Kilometerstand</code>

holli01
19.01.2003, 22:42
Hallo Schuldlos und Nouba,

vielen herzlichen Dank !!!

Ich war wirklich schon fast am verzweifeln!!

Es funktioniert bestens. :10points: Ich habe die Abfrage von Nouba benutzt. Sorry Schuldlos ich habe zwar schon einiges in Access gewurschtelt, jedoch bin ich noch mit den Modulen "per Sie" (Muß ich unbedingt noch lernen)

Herzlichen dank nochmal für eure überaus schnelle Hilfe !!!

Gruß der Glückliche !!

Holli01