PDA

Vollständige Version anzeigen : A97 / Berechnung KM - Stände in Abfrage


Jan Ullrich
19.06.2001, 11:22
Hallo.

Ich stehe mal wieder auf dem Schlauch und komme nicht mehr weiter. Vielleicht könnt' Ihr mir ja helfen.
Ich habe eine Tabelle, in welcher Km - Stände erfaßt werden.
Bsp.

(Kennzeichen) Monat KM-Stand
Xxxxx1 Januar 63.512
Xxxxx1 Februar 65.614
Xxxxx1 März 67.809
Xxxxx2 Januar 40.300
Xxxxx2 Februar 44.500
Xxxxx2 März 45.600

(Kennzeichen ist P-Key = String; Monat = Datum; KM-Stand = Long-Int)
Wie kann ich bloß die gefahrenen km ausrechnen ????? (Zwischen Januar und Februar / Gruppiert nach Kennzeichen)

Geht das überhaupt in Access ???
Ich bin für jede HILFE dankbar !!

Jan

Stema
19.06.2001, 12:45
Hallo Jan,
versuch mal folgendes:

dim db as database
dim r1 as recordset
dim r2 as recordset

set db=currentdb
set R1=db.openrecordset("SELECT * FROM DEINETABELLE WHERE Kennzeichen = Xxxxx1 AND Monat = Januar"
set R2=db.openrecordset("SELECT * FROM DEINETABELLE WHERE Kennzeichen = Xxxxx1 AND Monat = Februar"
kmDiff = r2![km-stand] - r1![km-stand]

holgii
19.06.2001, 13:31
Hallo Jan,

so habbich's mal getestet...


Erstelle eine Abfrage "qry_KM_Start":

SELECT tbl_KM_Stand.[P-Key], Min(tbl_KM_Stand.KM) AS [KM-Start]FROM tbl_KM_Stand GROUP BY tbl_KM_Stand.[P-Key];


Erstelle eine weitere Abfrage "qry_KM_Staende":

SELECT tbl_KM_Stand.[P-Key], tbl_KM_Stand.Monat, tbl_KM_Stand.KM, [tbl_KM_Stand].[KM]-[qry_KM_Start].[KM-Start] AS [gefahrene KM]
FROM tbl_KM_Stand INNER JOIN qry_KM_Start ON tbl_KM_Stand.[P-Key] = qry_KM_Start.[P-Key]
GROUP BY tbl_KM_Stand.[P-Key], tbl_KM_Stand.Monat, tbl_KM_Stand.KM, [tbl_KM_Stand].[KM]-[qry_KM_Start].[KM-Start];

Bei Ausführung der Abfrage "qry_KM_Staende" wird Dir je Fahrzeug und Monat der aktuelle KM-Stand und die auflaufend gefahrenen KM angezeigt.


Gruß
holgii

Jan Ullrich
19.06.2001, 13:33
Hallo Stema.

Vielen Dank für Deine Antwort !

Ich habe Deinen Code übernommen ... funktioniert aber leider bei mir nicht. Ich erhalte dann einen: Syntaxfehler(fehlender Operator) in Abfrageausdruck'Kennzeichen = Xxxxx1 and Monat = Januar'.

Habe ich bei der Übernahme vielleicht etwas falsch gemacht?? Ich muss doch vorher in einem Modul diesen Code übernehmen und dann von der Abfrage aus darauf zugreifen...?

Gruß

Jan

Stema
19.06.2001, 13:37
Fehler meinerseits! Muß heißen:
set R1=db.openrecordset("SELECT * FROM DEINETABELLE WHERE Kennzeichen = ""Xxxxx1"" AND Monat = ""Januar""""
set R2=db.openrecordset("SELECT * FROM DEINETABELLE WHERE Kennzeichen = ""Xxxxx1"" AND Monat = ""Februar""""

Jan Ullrich
19.06.2001, 13:54
Hallo Holgii,

vielen Dank für Deine promte Unterstützung. Mit Deinem SQL-Code hat es funktioniert !! Super !!!

VIELEN DANK AN EUCH BEIDE NOCH EINMAL !!!

Gruß

Jan