Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

DatDiff im Formular einfügen

Begonnen von lukyluke68, Juni 10, 2013, 10:38:13

⏪ vorheriges - nächstes ⏩

lukyluke68

Hallo,

ich habe eine Abfrage wo ich ein DatDiff auf Tage bezogen anhand eines Datumeintrages abrufe.
Ich möchte mir nun in einem Formular die Differenz Tage anzeigen lassen.
Wie muss ich das im Formular nun anlegen?

mfg. Ludwig

Im Anhang ein Bsp.

[Anhang gelöscht durch Administrator]
Gruß Ludwig

herb3472

#1
In das Textfeld "Differenz" gibts Du als "Steuerlementinhalt" folgende Formel ein:

=Int(Jetzt()-[Annahmedatum])

Das Textfeld formatierst Du als Standardzahl mit 0 Dezimalstellen. Mir ist allerdings nicht ganz klar, worauf Du mit diesem Formularentwurf hinauswillst...?

MfG Herb

lukyluke68

Hallo,

vielen Dank für deine rasche Hilfe

gruß Ludwig
Gruß Ludwig

MzKlMu

Hallo,
ich würde die Differenz in der Abfrage bilden:
Differenz: Datum()-[Annahmedatum]
Und das Formularfeld dann an das Feld Differenz binden.

PS:
Mit Datum() erspart man sich die Int() Funktion. Datum() enthält keine Zeit.
Gruß Klaus

lukyluke68

Hallo, danke für deine Antwort.

Ja das funktioniert auch. Möchte Euch beiden nochmals Danken dafür.

Ich habe die Differenz auf das Annahmedatum bezogen. Als zweites Datum habe ich nun ein Enddatum im Formular zum eintragen.
Also das Teil zur Reparatur vom Annahmedatum bis zum Enddatum. Ich möchte nun wenn das Enddatum eingetragen wurde, dass die Differenztage für diesen Datensatz stehen bleiben.
Das Enddatum Jetzt() soll sich durch das betätigen des Button eintragen.

[Anhang gelöscht durch Administrator]
Gruß Ludwig

MzKlMu

Hallo,
für die Differenz musst Du dann mit den beiden Datumsfeldern errechnen.

Und mit VBA kannst Du nicht Jetzt() verwenden sondern Now. Aber Now enthält die Zeit die hier nicht notwendig ist. Du muss daher Date verwenden.

Jetzt() = Now = mit Zeit
Datum() = Date = ohne Zeit

Now und Date ist VBA. In SQL sind dann Klammern zu verwenden.
Now() bzw. Date().

Für das Formular kannst Du die gespeicherte Abfrage direkt verwenden.

DB anbei.

[Anhang gelöscht durch Administrator]
Gruß Klaus

lukyluke68

#6
Hallo,

danke für die Hilfe.

Wenn ich den Code für den Button alleine verwende funktioniert es wie in der Bsp Datei angegeben.
Ich habe aber meinen Button schon belegt, das er mit beim betätigen ein Kontrollkästchen mit dem Wert -1 belegt.

Geht beides ich bekomms nicht hin?

Private Sub Reparatur_abgeschlossen_Click()

End Sub

Bei betätigen des Buttons sollten beide Befehle (Erfassen des Enddatums und Reparatur_abgeschlossen) laufen.

Noch etwas zu diesem Thema:
Bis jetzt habe ich es in meinem Formular das zweigeteilt ist so gemacht, das wenn der Button betätigt wurde und der Wert-1 im Kontrollkästchen erschienen ist, dass ich beim abspeichern des Eintrages, genau dieser "erledigte" Datensatz durch die Filterung im unteren Teile des Formulares in die Abfrage Archiv_Zangentausch verschoben hat. Kann mann dieses auch über VBA machen?

Dadurch hätte ich mehrere Fliegen mit einer Klappe erschlagen :)

PS: Das mit dem Ausführenbeider Befehle habe ich gerade hinbekommen

Private Sub Reparatur_abgeschlossen_Click()
Me.Rep_Enddatum = Date

End Sub

Jetzt bräuchte ich nur noch die Filterung

mfg
Ludwig
Gruß Ludwig