Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Formular Datum übergeben wenn Bedingung erfüllt

Begonnen von ReneB, Dezember 23, 2016, 09:24:56

⏪ vorheriges - nächstes ⏩

ReneB

Hallo,

arbeite seit einiger Zeit an einer kleinen DB und habe jetzt ein Problem wo ich nicht weiterkomme, hoffe hier auf Hilfe.
Habe ein Formular, Daten kommen aus einer Tabelle. Hier werden alle unsere Verladeaufträge vermerkt. Ich wollte gern, das wenn im Feld LieferscheinNr die Lieferschein-nr. eingetragen wird, automatisch das Tagesdatum im Feld verladen erscheint. Soweit war das kein Problem. Habe was mit VBA gebastelt und er trägt es auch irgendwie ein, allerdings löscht er das Datum nicht, wenn ich die Nummer wieder lösche und auch sonst funktioniert es nicht ganz so wie es soll. Wenn ich die Nummer eintrage passiert gar nix, erst wenn ich diese überschreibe, kommt das Datum. Habe bisher nichts gefunden was bei mir passen könnte und hoffe jetzt das hier bei Euch jemand Hilfestellung geben kann.

Hier ist mein Code:

Private Sub LieferscheinNr_Change()
If Me!LieferscheinNr > 0 Then
   Me!verladen = Date
Else
   Me!verladen = ""
End If
End Sub
Danke vorab

Rene

MzKlMu

Hallo,
Change ist ungeeignet, hier wird jeder Tastendruck ausgewertet.
Verwende Nach Aktualisierung.
Private Sub LieferscheinNr_AfterUpdate()
    If Not IsNull(Me!LieferscheinNr) Then
       Me!verladen = Date
    End If
End Sub

Der Else Zweig dürfte überflüssig sein.
Gruß Klaus

Joss

Hallo,

Zitatallerdings löscht er das Datum nicht, wenn ich die Nummer wieder lösche

aus diesem Grund würde ich den else-Teil drin lassen.

Private Sub LieferscheinNr_AfterUpdate()

If Not IsNull(Me!LieferscheinNr) Then
   Me!verladen = Date
Else
   Me!verladen = Null
End If

End Sub


Gruß
Josef

ReneB

Hallo Leute,

recht vielen Dank für die schnelle Hilfe, hatte das Problem zwischenzeitlich allein gelöst. Funktioniert jetzt ohne Probleme.

Freue mich das man hier so schnell und unkompliziert Hilfe erhält.

Grüsse ReneB

Joss

Hallo ReneB,

Zitathatte das Problem zwischenzeitlich allein gelöst. Funktioniert jetzt ohne Probleme.

vielleicht magst du uns deine Lösung mitteilen, damit wir was dazulernen können. ;)

Gruß
Josef

MzKlMu

Hallo,
und außerdem , wer hier im Forum nach Lösungen fragt, für den sollte es auch selbstverständlich sein, seine selbst gefundenen Lösungen hier zu posten.
Gruß Klaus

ReneB

#6
Hallo nochmal,


Sorry wollte nicht unhöflich sein. Hatte einiges privat zu erledigen und nicht mehr nachgeschaut. Hier mein Code, eigentlich Standard denke ich. Hatte es nur in das falsche Ereignis gesetzt.

Private Sub LieferscheinNr_AfterUpdate()
If Me!LieferscheinNr > 0 Then
   Me!verladen = Date
Else
   Me!verladen = ""
End If
End Sub


Grüsse Rene

MzKlMu

Hallo,
um ein Feld zu leeren, ist NULL zuzuweisen, mit "" ist das Feld nicht leer.
Me!verladen = NULL

PS:
Bitte keine vollständigen Beiträge als Zitat einfügen.
Gruß Klaus

Lachtaube

Als Musterlösung sollte man das so nicht stehen lassen. Nur weil der Datentyp Variant in einem Steuerelement so schön geschmeidig ist, wird auch die falsche Zuweisung von "" stattt Null verziehen.
Grüße von der (⌒▽⌒)

MaggieMay

@Lachtaube,
Zitat von: Lachtaube am Januar 12, 2017, 14:13:02
Als Musterlösung sollte man das so nicht stehen lassen.
so wie ich das sehe, wurde das bereits durch den Beitrag von Klaus zurecht gebogen, oder worauf genau bezieht sich dein Kommentar?
Freundliche Grüße
MaggieMay

Lachtaube

Grüße von der (⌒▽⌒)

MaggieMay

Ok, du Scherzbold,
ich hätte wohl besser schreiben sollen "so wie ich das verstehe...".
Hättest du dann mein Hirn ebenso gelobt wie meine Augen?
Freundliche Grüße
MaggieMay