probleempje met datum is null

Status
Niet open voor verdere reacties.

DukeOfEarl

Gebruiker
Lid geworden
20 mei 2015
Berichten
77
if datum is null werkt perfect,
alleen wanneer een ingevoerde datum wordt verwijderd, staat er blijkbaar geen null-waarde meer ?!?!

hoe moet ik mijn statement "if datum is null ..." dan opstellen?

Duke of Earl
 
Hoe haal je de datum weg? En ik neem aan, dat je dat via een tekstvak op een formulier doet?
 
hallo Octafish,
bedankt voor je snelle reactie.

het datumveld wordt automatisch ingevuld (systeemdatum) en is in alle formulieren gelocked (gebruiker heeft niets in de pap te brokken).
theoretisch kan er dus niets mislopen?!?!

zit hier echter in de testfase en werkte even rechtstreeks in de tabellen; daarna liep het blijkbaar fout.
ik ken het credo "NOOIT RECHTSTREEKS IN DE TABELLEN WERKEN". ;)

mvg,
Duke of Earl
 
ik ken het credo "NOOIT RECHTSTREEKS IN DE TABELLEN WERKEN". ;)
Dat is niet mijn credo :). Dat is: Laat GEBRUIKERS nooit rechtstreeks in tabellen werken :D. Je hebt dus een datumveld dat automatisch gevuld wordt (met Standaardwaarde neem ik aan) dus daar staat in beginsel altijd een datum in. Dat is gelocked, en dat zal dan wel weer op het formulier zijn, want dat lijkt mij lastig in een tabel. Alleen: wat doe je dan? In de tabel het datumveld leegmaken, of op het formulier? Want dat scheel nogal; in een tabel krijgt het datumveld volgens mij de waarde Null; op het formulier krijgt het tekstveld (want op een formulier kun je niks anders dan tekstvelden zetten) de waarde "". Dus wil je met VBA testen of een datumveld op een formulier leeg is, dan kun je dat het beste zo volledig mogelijk doen:
Code:
If Me.Datum Is Null Or Me.Datum = "" Then
of wellicht
Code:
If Me.Datum = vbNullString Then
 
hallo Octafish,
bedankt voor de aangereikte oplossingen.
had ondertussen nog even verder gezocht en de volgende oplossing gevonden:

if Isdate(naam datumveld) then ....

controleert of er een geldige datum staat (en dus niet meer testen op null of "" ...)
mijn programma werkt terug naar behoren.

tenzij jij nog mogelijke addertjes onder het gras ziet / bemerkingen hebt ... zal ik dit draadje binnenkort op "opgelost" zetten.

ps: had de datum rechtstreeks in de tabel verwijderd met de knop delete.

mvg,
Duke of Earl
 
Dat werkt ook. Er zijn verschillende manieren om te controleren :). Enige nadeel van IsDate is wel dat je geen oudere datums dan 1-1-1900 kan invoeren. Werk je bij een archief, dan kan dat een probleem zijn :).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan