Access: Berechnung Daten innerhalb eines Feldes

Hallo Zusammen!

komm bei einer Abfrage in Access nicht weiter, bin mir aber sicher, dass Ihr mir helfen könnt. Meine Abfrage sieht folgendermaßen aus:
(gewünschte
Berechnung)
A.Nr Bereich Datum DAUER
2300000 PS 23.06.2010 Leer
2300000 F 25.06.2010 2
2300000 F 28.06.2010 3
2300000 S 09.07.2010 11
2300001 PS 04.07.2010 Leer
2300001 G 10.07.2010 6
2300006 PS 10.06.2010 Leer
2300006 F 10.06.2010 0
2300009 PS 06.06.2010 Leer
usw. usw. usw.

Diese Daten ziehe ich aus einer Tabelle, die auf einem Server liegen. Ich möchte nun zu jeder A.Nr eine Berechung der Dauer. Wie in der Tabelle zu sehen, soll beim erstmaligen auftauchen der A.Nr keine Berechung erfolgen. Zu allen weiteren erfolgt eine Berechung der Dauer in Tagen zw. der unteren und oberen Datumsangabe.
Sobald sich die Auftragsnummer ändert geht das Spielchen von vorne los.
Bitte helft mir bei der Sache, ich komm da einfach nicht weiter. Für jeden Lösungsvorschlag bin sehr dankbar!

Gruß

(_Ro_)

Hallo Ro!

ich habe mir mal erlaubt, die Überschrift entsprechend deinem Problem anzupassen.

Leider konnte ich die Access Version nicht ergänzen :frowning:

komm bei einer Abfrage in Access nicht weiter, bin mir aber
sicher, dass Ihr mir helfen könnt. Meine Abfrage sieht
folgendermaßen aus:

> (gewünschte  
> Berechnung)  
> A.Nr Bereich Datum DAUER  
> 2300000 PS 23.06.2010 Leer  
> 2300000 F 25.06.2010 2  
> 2300000 F 28.06.2010 3  
> 2300000 S 09.07.2010 11  
> 2300001 PS 04.07.2010 Leer  
> 2300001 G 10.07.2010 6  
> 2300006 PS 10.06.2010 Leer  
> 2300006 F 10.06.2010 0  
> 2300009 PS 06.06.2010 Leer  
> usw. usw. usw.

hier im Forum kannst du diverse HTML-Tags nutzen um etwas besser darzustellen. Für eine Tabelle bietet sich der Tag an.

Bitte helft mir bei der Sache, ich komm da einfach nicht
weiter. Für jeden Lösungsvorschlag bin sehr dankbar!

In einer Abfrage geht das nicht, da deine Daten nicht normalisiert sind. D.h. du hast z.B. pro Datensatz keine eindeutige ID. Also könnte z.B. eine VBA Funktion nicht eindeutig auf vorherige Datensätze zugreifen.

  • Erstelle dir ein VBA-Code Modul.
  • mit einer While not .EOF Schleife gehst du durch die Datenbank und berechnest die Werte.
  • diese schreibst du dann in die Tabelle

btw: Access kann mit „leer“ nicht rechnen, ein Wert von 0 wäre besser.

Grüße aus Rostock
Wolfgang
(Netwolf)

Morgen Netwolf,

danke für die schnelle Antwort! Zu Ergänzung, ich verwende Access 2000. So wie es aussieht werd ich mich jetzt erst mal mit VBA beschäftigen müssen. Bin da nämlich noch ziemlich unerfahren. Meld mich, wenn ich eine Lösung gefunden habe.

Gruß Ro!